回复内容:
SGML 是一种很强大但很复杂的标记语言,HTML、XML 就是从中衍生出来的。
SGML 的例子如下:
typically something like this
最初的 HTML 也很像上面的这种样子,但后来逐渐演变到了 HTML5 后,就有一些新的规定和习惯,比如标签里的标签名和属性名必须小写等。所以说现时的 HTML5 已经不再基于 SGML 了。
——————补充——————
有人指出 HTML5 并没有规定标签名和属性名必须小写,事实的确如此。实际上 SGML 也没有规定标签名和属性名必须大写。虽然习惯如此。(早期的 HTML 跟随这一习惯)
又查了一些资料,补充一下我的理解:
SGML 最为强大和古老,XML 是 SGML 的一个子集,HTML 最初也试图成为 SGML 的一个子集,但 HTML 4 以前并不严格符合 SGML 的标准。后来出现了 HTML4,XHTML (符合 XML 标准的 HTML),这两者都符合 SGML 的要求。
到现如今,W3C 在制定 HTML5 标准时,希望摆脱 SGML 的一些无用的功能和声明,并延续 HTML4 的风格,而非严格的 XHTML 的风格。
所以,实际上 W3C 下与网页(超文本)相关的标准有两个系列:HTML 系列和 XHTML 系列。前者从 HTML 第一版一直发展到 HTML 4.x、HTML5,而 XHTML 系列从 XHTML 1.0、1.1、2.0 跳跃到 HTML5 的一部分:所谓的“XHTML5”。HTML 系列的工作重点在于丰富与超文本相关的功能、标记,提供较好的兼容性,更加面向“人”;而 XHTML 系列的工作重点在于将 HTML 改为更加符合 XML 严格规范的格式,更加面向“机器”。
XML 的语法很严格,是 W3C 的宝贝,所以 W3C 试图把各种东西都变成 XML 的子集或应用,比如 MathML,SVG 等。可是其地位逐渐受到其他一些轻量标记语言的威胁。
————
最后想说一点,这些乱七八糟的东西很多都是历史遗留问题,没有必要过多纠结。能写出漂亮的,优雅的网页才是一个开发者应该努力的方向。
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn