SGML (Standard Generalized Markup Language) е стандартът за кодиране на хартиени документи в електронен формат. С развитието на интернет стана ясно, че HTML вече не е в състояние да осигури необходимостта от по-динамично съдържание, тъй като е достигнало своите ограничения. XML (Extensible Markup Language) е език, извлечен от SGML и съдържа по-ограничен набор от функции, за да се улесни използването на кодери, тъй като SGML е твърде изчерпателен и сложен за предвидената употреба. Тъй като XML е просто подмножество от SGML, SGML парсерите могат да четат и декодират валидни XML файлове. Обратното не е непременно вярно, тъй като SGML файловете може да имат функции, които XML анализаторът не разбира.
Като подмножество няма да има функция в XML, която да не съществува в SGML. Ето кратък списък на премахнатите.
Следните декларации SGML вече не са позволени в XML:

  •  DATATAG
  •  OMITTAG
  •  RANK
  •  LINK
  •  съгласувам
  •  SUBDOC
  •  ОФИЦИАЛНО

Следните SGML конструкции вече не са позволени в XML:

  •  Празни начални маркери
  •  Празни крайни маркери
  •  Незатворени начални маркери
  •  Незатворени крайни маркери

Спецификации на атрибути без име
Директно въведените стойности на атрибутите в спецификацията на атрибута не са позволени и трябва да се въвеждат в литерали
Следните декларации за юридически лица на SGML вече не се допускат в SGML

  •  Външни SDATA структури
  •  Вътрешни SDATA образувания
  •  Външни CDATA образувания
  •  Вътрешни CDATA образувания
  •  #DEFAULT образувания
  •  PI образувания
  •  Записани текстови записи

Вече нямате право да указвате атрибути на субектите.
Промени са направени и в начина, по който кодерите пускат коментари в своя код. В декларацията за коментар вече не е позволено да има повече от един коментар. Празна декларация за коментари също е забранена. Разделителят на параметри е забранен да съдържа коментари. Това включва всяка декларация за маркиране, с изключение на декларациите за коментари, разбира се.
Резюме:
1.XML е подмножество от SGML
2.XML е по-опростен в сравнение с SGML
3.XML документите трябва да бъдат четими с SGML парсери, докато някои SGML могат да създадат грешки в XML парсери
4. Списък XML декларации са премахнати в XML
5. Някои конструкции, които са разрешени в SGML, вече не са разрешени в XML
6. Някои SGML образувания вече не са позволени в XML
7. Някои практики за коментари в SGML също са забранени в XML

Препратки