ASP编程 PHP编程 JSP编程 NET编程 CGI编程 XML编程 
Google adsense申请技巧本站核心代理域名注册主机业务 快速发布你的买卖域名买卖网站信息 1元注册 cn域名
站长每日新闻导读 √ ·推荐万网空间¥120元 150m 站长网:站长必上的网站网站联盟大全本站代理万网域名55空间120元
 2007-3-8 10:28:04

关于XML的四个神话

来源: 字体:[ ]

虽然这些不同的标记语言有它们的不同之处,所有这些,包括HTML,在三方面都是类似的。

  每一个都定义了一套有标准化含义和标准化使用规则的标准标记--换句话说,一个标准化的语法。
  每一个都设计为对某一特定类型的文档或数据工作得最好。
  都使用有12年历史的国际文本处理标准SGML定义它们的标准标记集和语法。
  所有这些语言看起来也相似,因为它们都使用熟悉的尖括号,继承自SGML的具体引用句法。

  SGML层

  根据上面的描述,应该很清楚SGML本身属于一个不同于任何用SGML定义的个别标记语言的概念层,SGML和特定标记语言的区别经常被总结为SGML是一种元语言而不是一种语言。这是一个很不精确的概括。SGML不象真正的元语言那样抽象,如巴克斯/纳尔范式(BNF),它是用于定义程序设计语言的。不过,称SGML为元语言确实使人抓住了关键:SGML不是一种特定的标记语言;它是一种定义标记语言的语言。

  理解XML的关键因素是它属于SGML层,而不是HTML层。XML是SGML的一种简化形式,而不是HTML的一种扩展形式。XML和SGML的区别是XML的设计者去除了许多SGML的高级特性,这些特性使得难以在一个Web浏览器中实现一个SGML的完全解析器。

  但是基本思想是一样的:XML是一种允许创建无限种不同用途的不同标记语言的技术。XML的关键--和它变得如此普及的原因--是所有可用它定义的不同的特殊用途语言都能被一个标准化的处理程序解析,这一程序小得可以内嵌入每一个Web浏览器中。

  不理解这一区别的人们往往得出一个结论,认为一个对XML敏感的应用将允许他们简单地在他们的HTML文档中到处撒上新的标记。试图用这种方式"扩展"HTML将使我们已得到的一团糟更加混乱。

  神话3:XML可以自己驱动Web浏览器

  记住HTML概念是一种包含相对小标准标记集的标记语言,与一些多少标准化的行为相关。XML概念是一个无限大的可能标记的集合,相关的行为根本没有标准。行为的规范必须来自其它某个地方。在发布时,这通常是一个样式表,但是在其它领域可以象JavaBeans一样柔性,或者象一种行业标准协议一样专门,程序员在其上编写标准化应用。

  句法不是语义

  XML支持者将这一点总结为XML定义句法而不是语义。一些理论家则反对说这一简单化的表述忽视了XML句法对象和构成它们所表示的XML数据(如元素和属性)的语义联系。然而,"句法而非语义"这一口号试图强调的更多,更简单:不像HTML标记,XML标记没有预定义的含义。意义或行为必须由以程序的运行条件或者脚本或者用样式表的声明条件甚至古老而好用的普通文本提供。

  当预期的XML用户可怜地询问XML如何在他们的Web浏览器上显示时,关于这一点的混淆就很明显了。回答是它并不显示--至少不是靠它自己。

  要在一个浏览器内仿效现在对HTML所做的,你必须单独提供HTML作为一个整体但是难以管理的整体所提供的:你必须提供一个文档的内容(在XML中表示)和对它的处理,而这必须用程序定义(用脚本)或者声明它(用样式表)。

 

 推荐教程
     
网站地图 - 域名注册续费虚拟主机代理 - 交易论坛 - 网站投稿 - 广告服务 - 帮助中心 - 联系我们
Copyright ©2003-2007 www.Admin5.com All Rights Reserved