XML vs SGML
XML înseamnă EXtensible Markup Language. Este definit în specificația XML 1.0, care este dezvoltată de W3C (World Wide Web Consortium). XML oferă o modalitate standard, care este, de asemenea, simplă, de codificare a datelor și a textului, astfel încât conținutul să poată fi schimbat între hardware-ul driverului, sistemele de operare și aplicațiile cu puțină intervenție umană. SGML (Standard Generalized Markup Language) este un standard ISO (Organizația Internațională pentru Standardizare) pentru specificarea unui limbaj de marcare a documentelor sau a unui set de etichete. SGML nu este un limbaj al documentului, ci o definiție a tipului de document (DTD).
XML
XML este un limbaj de marcare care este utilizat pentru a transfera date și text între hardware-ul driverului, sistemele de operare și aplicațiile cu intervenție umană redusă. XML oferă etichete, atribute și structuri de elemente care pot fi utilizate pentru a furniza informații de context. Aceste informații de context pot fi folosite pentru a decoda semnificația conținutului. Acest lucru face posibilă dezvoltarea de motoare de căutare eficiente și efectuarea de extragere a datelor. Mai mult, bazele de date relaționale tradiționale sunt potrivite ca date XML, deoarece ar putea fi organizate în rânduri și coloane, dar XML oferă mai puțin suport pentru date cu conținut bogat, cum ar fi audio, video, documente complexe etc. Bazele de date XML stochează date într-o formă structurată, ierarhizată. ceea ce permite ca interogările să fie procesate mai eficient. Etichetele XML nu sunt predefinite și utilizatorii pot defini noi etichete și structuri de documente. De asemenea, noi limbi de internet precum RSS, Atom, SOAP și XHTM au fost create folosind XML.
SGML
SGML se bazează pe ideea că, deși un document poate fi afișat cu diferite apariții în funcție de mediul de ieșire utilizat, acesta conține unele elemente structurale și semantice care nu se modifică în raport cu modul în care este afișat. Documentele bazate pe SGML pot fi create fără a se preocupa de aspectul documentului, care poate schimba orele suplimentare, ci de structura documentului. Mai mult, compilatorul SGML poate interpreta orice document folosind DTD-ul său, prin urmare, aceste documente oferă mai multă portabilitate. De asemenea, documentele bazate pe SGML ar putea fi ușor readaptate la diferite suporturi (de exemplu, documentele destinate suportului tipărit ar putea fi readaptate pentru un ecran de afișare).
Care este diferența dintre XML și SGML?
În timp ce XML este un limbaj de marcare care este utilizat pentru a transfera date și text între hardware-ul driverului, sisteme de operare și aplicații, SGML este un standard ISO pentru specificarea unui limbaj de marcare a documentelor sau a unui set de etichete. XML este de fapt un limbaj de markup bazat pe SGML. Dar XML impune unele restricții care nu sunt în SGML. De exemplu, XML impune următoarele restricții: referințele entității trebuie închise cu un delimitator REFC, referințele la entități de date externe din conținut nu sunt permise, referințele la caractere trebuie închise cu un delimitator REFC, referințele cu caractere numite nu sunt permise etc. unele construcții, cum ar fi etichetele de pornire nedeschise, etichetele de finalizare nedeschise, etichetele de început goale, etichetele de gol goale care sunt permise în SGML când SHORTTAG este DA, nu sunt permise în XML. În plus, unele declarații SGML, cum ar fi DATATAG, OMITTAG, RANK,LINK (SIMPLE, IMPLICIT și EXPLICIT) etc. nu sunt permise în XML.