当XML被W3C批准后迅速在1998年2月进入历史舞台,被称为"当年突然涌现的技术"。它被称为HTML的继任者,还被有些人称为结构化数据交换的未来混合语。
由于XML是从它W3C开始的阴暗处涌现出来的,也许不可避免地,这一新数据格式将象它吸引狂热爱好者一样快地开始产生错误概念。在本文中,我将在一些关于XML的神话成为永久性错误理解前澄清它们。
神话1:XML是由微软领导的共同成果
XML是一个共同成果,但不是微软的。实际上,XML是由一个Sun微系统公司组织的标记语言专家小组提出的,以开发历史悠久的ISO标准SGML用于Web的一种形式。
微软确实是XML工作中的一个主要参与者,但是其它一些大公司也是如此(Sun,惠普,Netscape, Adobe和富士及施乐),还有主要的SGML厂商和系统集成商(ArborText,Inso, SoftQuad,Grif,Texcel和Isogen),学术团体的代表(NCSA和Text Encoding Initiative),早期使用者(DataChannel 和Vignette),和世界上最主要的SGML专家之一James Clark,他是W3CSGML的技术领袖。
关于XML,令人惊异的是所有这些人和组织都将个人和公司议事日程放在一边,合作建立一个天生开放的标准,完全由用户需求驱动。这些需求包括:
虽然我不得不钦佩微软对XML概念的熟练使用和推销,但是XML并不属于微软。XML属于世界。
神话2:XML是HTML的一个扩展
早期对XML的概括已导致许多人相信XML仅仅是一种通过增加新标记来扩展HTML的方法。实际上,XML和HTML在标记语言中处于完全不同的层次。HTML是一种标记语言--一套具有标准意义的标准分隔符,可放到文档中以指示文档中特定部分的角色。例如,在一个HTML文档中<H2>和 </H2>之间的任何东西都被理解为一个第二级文档标题。
标记语言
对标记语言的经验只局限于Web的人们经常惊讶地得知HTML只是许许多多标准标记语言中的一种,这些语言在特定行业内已被开发多年。例如,航空业有一种飞机维护手册的标记语言,称为ATA-2100,半导体行业有一种用于电路数据的标记语言,称为PCIS,而计算机行业有一种用于软件文档的标记语言,称为DocBook。
这些标记语言中有些比HTML使用得更久,其中许多面向的是要解决的问题不同的方面。例如,考虑这段HTML:
<H2>Second-level heading</H2>
这是一段很可能属于上面标题的文本。</P>
一段类似的DocBook可能看起来象这样:
<SECT2>
<TITLE>二级标题</TITLE>
<PARA>这是一段肯定属于上面标题的文本。
我们知道这一点是因为它们都包含在同一个SECT2元素内。
</PARA>
</SECT2>