SGML,XML.HTML之间的关系

首先,看看这几个字母都是什么意思
SGML:

Standard Generalized Markup Language(标准通用标记语言);

XML:

Extensible Markup Language(可扩展标记语言)

我不知道为什么它要叫XML,不过可能跟Cross Site Script叫XSS一样,避免跟CSS(Cascading Style Sheet)重名一样.

HTML:

HyperText Markup Language(超文本标记语言)


SGML是现时常用的超文本格式的最高层级标准,是可以定义标记语言的元语言,甚至可以定义不必采用< >的常规方式.(来自wiki)

XML是用来传送及携带数据信息,不用来表现或展示数据,HTML语言则用来表示数据.XML是从SGML简化修改出来的.


那么也就是说,SGML可以算是XML和HTML的parent,SGML提供了一种定义标记语言的方式,告诉他的child可以做什么不可以做什么,必须包括什么元素,例如标签,以及语言的基本结构.

HTML是SGML的Youngest son,是创建页面形式和外观的标记语言,还可通过javascript添加其他的功能

因此利用SGML创建了HTML参照和必须共同遵守的DTD,你会经常在HTML页面的头部发现“DOCTYPE”属性,用来定义用于解析目标DTD

而XML是SGML的Eldest child,它具有不同于HTML的功能,XML有HTML没有的权限,XML可以定义自己的应用程序等等

现在解析SGML是一件麻烦的事情,所以创建了XML更简化.例如:在SGML中你必须使用起始和结束标签,但是在XML你可以有自动关闭的结束标签

你可能感兴趣的:(SGML,XML.HTML之间的关系)