一、XML产生的背景
XML同HTML一样,都来自Standard Generalized Markup Language, 即标准通用标记言语,简称SGML。早在Web未发明之前,SGML就早已存在。正如它的名称所言,SGML是一种用标记来描述文档材料的通用言语,它包含了一系列的文档类型定义(简称DTD),DTD 中定义了标记的含义,因此 SGML 的语法是可以扩展的。SGML十分庞大,既不容易学,又不容易使用,在计算机上实现也十分困难。鉴于这些要素,Web的发明者--欧洲核子物理研讨中心的研讨人员依据当时(1989年)计算机技术的能力,提出了HTML言语。
HTML只使用SGML中很小一部分标记,例如HTML 3.2定义了70种标记。为了便于在计算机上实现,HTML规定的标记是固定的,即HTML语法是不可扩展的,它不需包含DTD。HTML这种固定的语法使它易学易用,在计算机上开发 HTML的浏览器也十分容易。正是由于HTML的简单性,使 Web 技术从计算机界走向全社会,走向千家万户,Web的发展如日中天。
近年来,随着 Web的使用越来越广泛和深入,人们渐渐觉得HTML不够用了,HTML过于简单的语法严重地妨碍了用它来表现复杂的方式。虽然HTML推出了一个又一个新版本,曾经有了脚本、表格、帧等表达功用,但一直满足不了不断增长的需求。另一方面,这几年来计算机技术的发展也十分迅速,曾经可以实现比当初发明创造HTML时复杂得多的Web浏览器,所以开发一种新的Web页面言语既是必要的,也是可能的。
有人建议直接使用SGML 作为Web言语,这固然能处理HTML遇到的困难。但是SGML太庞大了,用户学习和使用不方便尚且不说,要全面实现SGML的浏览器就非常困难,于是自然会想到仅使用SGML的子集,使新的言语既方便使用又实现容易。正是在这种情势下,Web标准化组织W3C建议使用一种精简的SGML版本--XML应运而生了。