Rozdíl mezi SGML a XML

SGML vs. XML

SGML (Standard Generalized Markup Language) je standard pro kódování papírových dokumentů do elektronického formátu. S vývojem internetu vyšlo najevo, že HTML již není schopno poskytovat dynamičtější obsah, protože dosáhlo svých omezení. XML (Extensible Markup Language) je jazyk, který byl odvozen od SGML a obsahuje omezenější sadu funkcí, aby bylo použití kodérů jednodušší, protože SGML je pro zamýšlené použití příliš komplexní a složitý. Protože XML je jednoduše podmnožinou SGML, analyzátory SGML jsou schopné číst a dekódovat platné soubory XML. Zpětný chod nemusí být nutně pravdivý, ačkoli soubory SGML mohou mít funkce, kterým analyzátor XML nerozumí.
Jako podskupina by v XML neexistovala žádná funkce, která v SGML neexistuje. Zde je krátký seznam toho, co bylo odstraněno.
Následující prohlášení SGML již nejsou povolena v XML:

  • DATATAG
  • OMITTAG
  • HODNOST
  • ODKAZ
  • CONCUR
  • SUBDOC
  • FORMÁLNÍ

Následující konstrukty SGML již nejsou povoleny v XML:

  • Prázdné startovací značky
  • Prázdné koncové značky
  • Neuzavřené počáteční značky
  • Neuzavřené koncové značky

Specifikace atributů bez názvu
Přímo zadané hodnoty atributů ve specifikaci atributů nejsou povoleny a měly by být zadávány v literálech
Následující prohlášení entity SGML již nejsou v SGML povolena

  • Externí entity SDATA
  • Interní entity SDATA
  • Externí entity CDATA
  • Interní entity CDATA
  • #DEFAULT entity
  • Subjekty PI
  • Zadávání textu v závorkách

Už nemáte povoleno určovat atributy pro entity.
Byly také provedeny změny ve způsobu, jakým kodéry vkládají komentáře do svého kódu. Prohlášení o komentáři již nesmí mít více než jeden komentář. Rovněž bylo zakázáno prohlášení o prázdném komentáři. Oddělovač parametrů je zakázán, aby obsahoval jakýkoli komentář. To samozřejmě zahrnuje jakékoli prohlášení o značce, vyjma prohlášení o komentářích.
Souhrn:
1.XML je podmnožinou SGML
2.XML je ve srovnání s SGML jednodušší
Dokumenty 3.XML by měly být čitelné pomocí analyzátorů SGML, zatímco některé SGML mohou způsobit chyby v analyzátorech XML
4. Seznam deklarací SGML byl odstraněn v XML
5. Některé konstrukty, které jsou povoleny v SGML, již nejsou povoleny v XML
6. Některé entity SGML již nejsou povoleny v XML
7.Některé komentáře v SGML byly také zakázány v XML