Diferența dintre XML și SGML

Anonim

XML vs SGML

XML reprezintă limbajul extensibil de marcare. Este definită în specificația XML 1.0, dezvoltată de W3C (World Wide Web Consortium). XML oferă o modalitate standard, care este de asemenea simplă, de a codifica date și text, astfel încât conținutul să poată fi schimbat între hardware-ul șoferului, 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ă de Standardizare) pentru specificarea unui limbaj de marcare a documentelor sau a unui set de etichete. SGML nu este o limbă de document, ci o definiție a tipului de document (DTD).

XML

XML este un limbaj de marcare utilizat pentru a transfera date și text între hardware-ul șoferului, sistemele de operare și aplicațiile cu puțină intervenție umană. XML oferă etichete, atribute și structuri de elemente care pot fi folosite pentru a furniza informații de context. Această informație context poate fi utilizată pentru a decoda semnificația conținutului. Acest lucru face posibilă dezvoltarea de motoare de căutare eficiente și realizarea de date miniere asupra datelor. Mai mult, bazele de date relaționale tradiționale sunt potrivite ca date XML, deoarece acestea 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ă, ierarhică care 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, au fost create noi limbi de internet, cum ar fi RSS, Atom, SOAP și XHTM, utilizând XML.

SGML

SGML se bazează pe ideea că, deși un document poate fi afișat cu apariții diferite în funcție de mediul de ieșire utilizat, el conține anumite elemente structurale și semantice care nu se modifică cu referință la modul în care este afișat. Documentele bazate pe SGML pot fi create fără a se referi la aspectul documentului care poate schimba orele suplimentare, ci în ceea ce privește structura documentului. Mai mult, compilatorul SGML poate interpreta orice document utilizând DTD-ul său, prin urmare aceste documente oferă o mai mare portabilitate. De asemenea, documentele bazate pe SGML ar putea fi ușor adaptate la medii diferite (de exemplu, documentul destinat mediului de imprimare ar putea fi readaptat 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, sistemele de operare și aplicațiile driverului, 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 care se bazează pe SGML. Dar XML impune anumite restricții care nu sunt în SGML. De exemplu, XML impune următoarele restricții: referințele entității trebuie să fie închise cu un delimiter REFC, nu sunt permise referințe la entități de date externe din conținut, referințele de caractere trebuie să fie închise cu un delimiter REFC, referințele de caractere numite nu sunt permise etc.Mai mult, unele constructe, cum ar fi etichetele de început neînchise, etichetele finale necompletate, etichetele inițiale goale, etichetele goale goale care sunt permise în SGML când SHORTTAG este YES, 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.