陈 静

摘要随着信息网络的飞速发展,信息载体的形式正逐步从印刷型、固定型向数字型与动态型的数字化文献形式过渡。为了规范数字化文献形式,SGML、HTML、XML3种标记语言先后应运而生。本文就这 3种标记语言进行分析与比较。

关键词SGMLHTMLXML

中图分类号:TP31文献标识码:A

XML技术自出现以来,在许多领域内得到广泛的支持并有着广阔的应用前景。XML数据已成为一个研究热点。同时,看似与它相似已被人淡忘已久的SGML、HTML两种标识语言也被翻出,频频出现加以比较。那三者到底有没有联系,有什幺联系?下面我们从概念、特性加以分析理解。

1 HTML,SGML,XML三种标记语言

(1)SGML标准通用标记语言(Standard Generalized Markup Language)是针对指定一个文档标记语言或标签设置方式的一种元语言。这个标准本身是一个文档类型定义(DTD)。SGML 是 IBM 通用标记语言(GML)的一个后裔。SGML 基于有结构的文档和能够描述不论这些元素是怎样被显示的其他语义元素的想法。SGML 提供多种能够被用于很多应用程序的标记语法。通过改变 SGML 声明,一个人甚至不需要使用“角括号”尽管它们是规范的,所谓的具体参考语法。SGML 最初设计来使在政府、法律和航空和航天工业的大型工程中能够共享机器可读文档,其必须保留可读文件几十年——在信息技术中很少的时间。它也已经广泛地应用在印刷和出版行业,但是它的复杂性阻止了它在小规模多方面用途的广泛应用。目前,SGML多用于科技文献和政府办公文件中SGML的主要特点:SGML可支持无数的文档结构类型,例如布告、技术手册、章节目录、设计规范、各种报告、信函和备忘录等;SGML可以创建与特定的软硬件无关的文档,因此很容易与使用不同计算机系统的用户交换文档。

使用SGML对多媒体的创作将带来许多好处。例如,可使创作人员更集中于内容的创作,可提高作品的重复使用性能、可移植性能以及共享性能等;SGML的使用范围很广,除了传统的电子出版物之外,SGML还可用在其他许多场合。例如,前面介绍的超媒体和超文本文档、万维网页面的制作、数据库、电子邮件、专家系统、CD-ROM出版物、交互式电子技术手册等方面都大有用武之地。

(2)HTML超文本标识语言(Hypertext Marked Language),是一种用来制作超文本文档的简单标记语言。超文本传输协议规定了浏览器在运行 HTML 文档时所遵循的规则和进行的操作。HTTP协议的制定使浏览器在运行超文本时有了统一的规则和标准。用HTML编写的超文本文档称为HTML文档,它能独立于各种操作系统平台,自1990年以来HTML就一直被用作WWW(是World Wide Web的缩写,也可简写WEB、中文叫做万维网) 的信息表示语言,使用HTML语言描述的文件,需要通过WEB浏览器显示出效果。

所谓超文本,是因为它可以加入图片、声音、动画、影视等内容,事实上每一个HTML文档都是一种静态的网页文件,这个文件里面包含了HTML指令代码,这些指令代码并不是一种程序语言,它只是一种排版网页中资料显示位置的标记结构语言,易学易懂,非常简单。HTML的普遍应用就是带来了超文本的技术——通过单击鼠标从一个主题跳转到另一个主题,从一个页面跳转到另一个页面与世界各地主机的文件链接。

(3)XML可扩展标识语言 (eXtensible Marku Language),是Web上的数据通用语言。它使开发人员能够将结构化数据,从许多不同的应用程序传递到桌面,进行本地计算和演示。XML 允许为特定应用程序创建唯一的数据格式。它还是在服务器之间传输结构化数据的理想格式。XML是一种简单、与平台无关并被广泛采用的标准,是用来定义其它语言的一种元语言,其前身是SGML(标准通用标记语言)。简单的说,XML是提供一种描述结构化数据的方法,它不但完成了HML不能完成的任务,更为互联网世界提供了定义各行各业的“专业术语”的工具。

2 XML、SGML、HTML三者关系

SGML、HTML是XML的先驱。SGML最早是用来再字处理程序中描叙数据用的。像RTF(富文本)文件,Word的DOC文件等等,都可以看成是应用SGML的例子。如果用记事本打开一个RTF文件,就可以看到同HTML相近的一些东西,那就是RTF的源数据描叙,也是通过SGML定义的。SGML从诞生到现在已经有上 10年的时间了,可以说已经发展的十分成熟。XML和HTML都可以算的上是SGML的徒子徒孙了,他们都是从SGML发展而来的文档格式描叙语言。因此他们都有一些共通的特性,比如相近的语法,都使用尖括号标签等等。但是准确的说来,HTML是SGML的一个应用,而XML是SGML的一个精简子集。

XML是与SGML相兼容的——XML文档能够被任何SGML编辑和浏览器所解析。但是,XML比SGML要简单得多,并且他是特别为传输带宽有限的Internet所设计的。Tim Bray是XML标准的编制人员之一,根据他的说法,XML就是要继承SGML的优点,但去掉SGML的复杂性,并使之能够在网上很好的工作。

而XML、HTML其间的差别是本质上的。简单的说来,HTML不能够用来定义(或者说衍生)一个(下转第121页)(上接第113页)新的应用,而XML却能够做到。例如,资源描叙格式和频道定义格式就是由XML定义出来的新的应用。理论上讲,甚至可以用XML来重新改写HTML。

3 结论

事实上HTML、SGML和XML都将在一定时间内守住自己的岗位,暂时不会有哪一种会被其他的所淘汰。HTML仍然是网上发布信息最为快捷的方式。如果要发布的数据有长期的应用价值并且需要一些结构化的内容,网站建设者应该考虑转而使用XML。和HTML与XML不同,SGML将不会在网上得到广泛的赞同,因为它并不是为网上传输而特别设计的。但对于高端的应用,那些高度结构化的文档应用,SGML仍将发挥起作用。