61阅读

xml-XML简介

发布时间:2017-09-28 所属栏目:xml是什么

一 : XML简介

XML简介

XML代表Extensible Markup Language(eXtensible Markup Language的缩写,意为可扩展的标记语言)。[www.61k.com)与HTML相似,XML是一种显示数据的标记语言,它能使数据通过网络无障碍地进行传输,并显示在用户的浏览器上。XML是一套定义语义标记的规则,这些标记将文档分成许多部件并对这些部件加以标识。它也是元标记语言,即定义了用于定义其他与特定领域有关的、语义的、结构化的标记语言的句法语言。

XML是元标记语言

关于XML要理解的第一件事是,它不只是像超文本标记语言(Hypertext Markup Language,HTML)或是格式化的程序。这些语言定义了一套固定的标记,用来描述一定数目的元素。如果标记语言中没有所需的标记,用户也就没有办法了。这时只好等待标记语言的下一个版本,希望在新版本中能够包括所需的标记,但是这样一来就得依赖于软件开发商的选择了。

但是XML是一种元标记语言。用户可以定义自己需要的标记。这些标记必须根据某些通用的原理来创建,但是在标记的意义上,也具有相当的灵活性。例如,假如用户正在处理与家谱有关的事情,需要描述人的出生、死亡、埋葬地、家庭、结婚、离婚等,这就必须创建用于每项的标记。新创建的标记可在文档类型定义(Document Type Definition,在以后的篇幅中常简称为DTD)中加以描述。在本书的第二部分中将会学到有关DTD的更多的知识。现在,只需把DTD看作是一本词汇表和某类文档的句法。例如,在Peter Murray-Rust的Chemical Markup Language (化学标记语言,简写为CML)中的MOL.DTD文件中描述了词汇表和分子科学的句法:其中包括chemistry(化学)、crystallography(结晶学)、solid state physics(固体物理)等词汇。它包括用于atoms(原子)、molecules(分子)、bonds(化学键)、spectra(光谱)等的标记。这个DTD可与分子科学领域中的许多不同的人共享。对于其他领域也有其他的DTD,用户还可以创建自己的DTD。

XML定义了一套元句法,与特定领域有关的标记语言(如MusicML、MathML和CML)都必须遵守。如果一个应用程序可以理解这一元句法,那么它也就自动地能够理解所有的由此元语言建立起来的语言。浏览器不必事先了解多种不同的标记语言使用的每个标记。事实是,浏览器在读入文档或是它的DTD时才了解了给定文档使用的标记。关于如何显示这些标记的内容的详细指令是附加在文档上的另外的样式单提供的。例如,考虑薛定格(Schrodinger)方程:

科学论文中充满了这一类方程,但是科学家还必须等待多年,才能让浏览器的开发商支持书写最基本的数学公式所需的标记。音乐家也有同样的局限性,因为Netscape Navigator和Internet Explorer还都不支持乐谱。

有了XML就意味着不必等待浏览器的开发商来满足用户的需要了。用户可以创建自己需要的标记,当需要时,告诉浏览器如何显示这些标记就可以了。

xml是什么 XML简介

XML标记描述的是文档的结构和意义。(www.61k.com)它不描述页面元素的格式化。可用样式单为文档增加格式化信息。文档本身只说明文档包括什么标记,而不是说明文档看起来是什么样的。

XML 的起源和目的

1 9 9 6 年,万维网协会(或者叫W 3 C ,h t t p : / / w w w. w 3 c . o rg )开始设计一种可扩展的标记语言,使其能够将S G M L 的灵活性和强大功能与已经被广泛采用的H T M L 结合起来。这种后来变成X M L 的语言继承了S G M L 的规范,而且实际上就是后者的一个子集。从S G M L 入手使得该设计小组能够将精力集中在简化已有的成果上。S G M L 已经提供了一种可以无限扩展的语言,它允许任何人能够根据自己的需要加以扩充。X M L 之所以要较S G M L 更为简化,很大程度上是出于易用性的考虑:人们对标记的读写过程应该使用现有的、简便通用的工具,同时,我们也应当简化计算机对文档和数据交换的处理。由于有太多的可选功能,S G M L 变得过于复杂,以至于很难编写出针对这种语言的普通解释器,而X M L 的解释器则简单得多。此外,X M L 使得现有的I n t e r n e t协议和软件更为协调,从而简化了数据处理和传输。作为一个不错的S G M L 子集,X M L 还保持了对现有的面向S G M L 的系统的向下兼容性,这样,用X M L 标记过的数据就仍然可以在这些系统中使用,为基于S G M L 的行业节省了大笔的改造费用,同时,与We b 的结合也使得它们更便于被访问。1998 年2 月,XML 1.0 成为了W3C 的推荐标准。包括Extended Backus-Naur Form (EBNF) 中语法标识在内的这个正式的规范可以很容易地从W 3 C 的We b 站点(h t t p : / / w w w. w 3 c . o rg / T R / R E C - x m l )上得到;此外,X M L 规范的制定者之一Tim Bray 还在h t t p : / / w w w. x m l . c o m / a x m l / t e s t a x m l . h t m 上提供了一个有着非常不错的注解的版本。在http://www.ucc.ie/xml/上,由Peter Flynn 等人代表W3C 的XML 研究组维护的一个XML 1.0FAQ 还提供了到其他与XML 相关的主题的链接。X M L 是一种界定文本数据的简便而标准的方法。它曾经被人称作“We b 上的A S C I I 码”。就好像你可以使用自己喜爱的编程语言来创建任何一种数据结构,然后同其他人在其他计算平台上使用的其他语言来共享一样。X M L 的标记用来说明你所描述的概念,而属性则用来控制它们的结构。所以,你可以定义自己所设计出的语法并同其他人共享。

XML的特点:

1. 使用有意义的标记(TAG)

HTML:给浏览器读取,不能传达数据的语义。

XML:具有语义。

2. 数据的语义与显示方式分开

HTML:决定数据显示方式的语言。

XML:描述数据内容的语言,本身并不决定数据该

如何显示,数据的显示由XSL决定。

3. 可自定义的标记

xml是什么 XML简介

HTML:标记由少数权威团体制定,种类有限且不能

随意添加。[www.61k.com)

XML:可由用户按需要增加标记。如数学标记语言

MATHML、财经标记语言FPML、电子商务标记语言

EBXML等。

4. 严格的语法控制

HTML:语法规则比较多元化,具有较大灵活性。文

件结构比较松散,不能很容易的转换为其他类型格

扩展:xml个人简介 / 个人简介 / 公司简介

式,比较难用程序来做大量而有效的处理,数据再

利用的潜力大为降低。

XML:对语法有严格的要求,所有XML的文件都必

须经过严格的“验证”过程才算完成,文件格式容

易转换。

XML的优势:

XML最大的优势在于对各种数据的管理。

任何系统都可以通过XML的解析器来读取XML数据,因此它的数据可以通行各处,而不用担心系统不支持的问题。

1. 数据的检索:

Internet上主要的数据检索方式:分类检索和全文

检索。

检索效率低,或找不到。

XML:在语义标记作为搜索索引;在文件中截取关

键部分。

所有标记内的数据都可视为一个元素,而每一个元素都可以作为数据的索引。

2. 数据的显示:

XML将数据保存的格式与数据显示的方式分开,使

得XML文件可以轻易地更换数据显示的方式,仅需

改变XSL的设置,用户就可以将同一数据制作成

HTML、PDF、WML(Wireless Markup Language)、

HDML(Hand-Held Device Markup Language)等不

同格式,供不同的硬件显示。

3. 数据的交换:

XML语法简单,可以被所有的机器解读,又可以在各种平台上使用,使得XML

有潜力成为一个通行四海皆准的标记语言。

XML的应用:

XML的应用主要有:内容管理(Content Management)、电子邮件的收发与管理、智能型日历、个性化信息服务、电子商务。

Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=17606

xml是什么 XML简介

xml是什么 XML简介

[收藏到我的网摘] yuan_er发表于 2003年08月22日

xml是什么 XML简介

11:13:00

扩展:xml个人简介 / 个人简介 / 公司简介

二 : XML

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

什么是XML

XML是由互联网联盟(World Wide Web Consortium,W3C)的XML工作组定义的。这个工作组是这样描述该语言的:

扩展标记语言(XML)是SGML的子集,其目标是允许普通的SGML在Web上以目前HTML的方式被服务、接收和处理。XML被设计成易于实现,且可在SGML和HTML之间互相操作。”

XML是一种专门在World Wide Web(www)上传递信息的语言,就像HTML(超文本标记语言)一样(自从Web出现以来,HTML已经成为了创建Web页的标准语言)。

。www.61k.com”

XML的类型

1.无类型XML

简单地说,无类型XML是指XML文档没有和任何XML模式相关联。

如果不确定XML将遵循哪个XML模式,则无类型XML有用。例如,如果必须使用一个应用程序的某些XML,但无法确定数据将遵循哪个XML,则可以使用无类型XML列来执行这项工作。当然,无类型XML也会带来其他问题。例如,不能针对某个模式编程,因此很难有效地使用XML。

模式不绑定到XML列,SQL Server 2005会将无类型XML作为一个字符串存储。这既是好事也可能是坏事。一方面,将XML作为字符串存储可以更灵活地存储任何XML片段或文档。另一方面,将XML作为字符串存储意味着,与类型化XML相比,既不能有效地存储也不能有效地搜索XML数据。

2.类型化XML

与无类型XML相对应,类型化XML文档可以绑定到某个XML模式。例如,一个XML列绑定到XML模式后,再对此列操作时,XML模式会自动验证XML数据是否符合XML模式的要求。在SQLServer2005中,可将多个模式集合在一起形成模式集合。

使用XML模式有两个优点:

(1)XML验证是自动的。无论是给一个变量分配XML值,还是向XML列中插入XML值,SQL Server都会自动用模式来验证XML的有效性。这样做的结果是获得了较好的性能,因为不用在运行时转换节点的值。

(2)XML存储的内容是最少的,因为关于元素和属性的类型信息都由模式本身来提供。这样做可以为存储值提供更好的转换解释。

XML的特点

  • 简单易用,功能强大。
  • 允许各个组织、个人建立适合自己需要的标记集合,并且这些标记可以用通用的工具显示。例如定义数学、化学、音乐等专用标记。
  • 最大优点在于它的数据存储格式不受显示格式的制约。一般来说,一篇文档包括3个要素:数据、结构以及显示方式。XML把文档的显示格式从数据内容中独立潜来,保存在样式表文件(Style Sheet)中,这样如果需要改变文档的显示方式,只要修改样式表文件即可。
  • 通过有意义的标签以结构化的格式存储数据,用一种开放的自我描述方式定义数据结构,在描述数据内容的同时突出对结构的描述,从而体现出数据之间的关系,XML的自我描述性质能够很好地表现许多复杂的数据关系,使得基于XML的应用程序可以在XML文件中准确高效地搜索相关韵数据内容,忽略其他不相关部分。
  • XML还有其他许多优点,比如它有利于不同系统之间的信息交流,完全可以充当网际语言,并有希望成为数据和文档交换的标准。

由于以上优点,XML必将在商务的自动化处理、信息发布、智能化豹Web应用程序和数据集成等领域被广泛使用。

XML的历史及目标

XML的历史

数据标记的需求起源于电子数据格式化。早期的电子数据格式化主要关注的是数据应该如何被显示而不是数据的文档结构和含义。Troff(UNIX下的文档资料排版、编辑和格式化程序)和TEX(一种电子排版系统)就是两种早期的格式化语言,在格式化打印文档方面取得了很多成果,但是缺少任何关于结构方面的功能。因此这些文档只局限于屏幕显示和硬拷贝打印。人们难以编写一个程序对这些文档中的信息进行查找、提取和前后对照,更不能方便地将一个文档中的数据重复用于不同的应用中。

通用编码(Generic Coding)使用描述性标签取代格式码,最终解决上述问题。最早认真研究该问题的是图形通信协会(Graphic Communications Association,GCA)。在20世纪60年代末,图形通信协会(GCA)的Gen Code委员会研发出一种使用通用标签(Generic Tag)将不同类型的文档装配成由多个部分组成的复合型文档的方法。

在此之后,在该方面取得主要进展的是IBM公司的一个研发项目:广义标记语言(Generalized Markup Language,GML)。由Charles Goldfarb、Edward Mosher和Raymond Lorie三人主持的GML项目旨在提供一个能够在多重信息子系统中使用的文档编码解决方案。因为采用基于内容的标签,由GML编写的文档能够被编辑、格式化以及能够使用不同的程序进行检索。作为一个巨大的技术手册发布者,IBM已经广泛采用了GML,并以此证明了通用编码的生命力。

基于GML的成功,美国国家标准协会(American National Standards Institute,ANSI)在信息处理方向上建立了一个由Charles Goldfarb领导的项目小组,以研发一个基于GML的文本描述语言标准为目的。GCA的Gen Code委员会也为此项目贡献了力量。自20世纪70年代后期到80年代早期,该委员会发布了工作草案并最终提交了一个工业标准的候选方案(GCA 101-1983),该候选方案被称为广义标记语言标准(the Standard Generalized MarkupLanguage,SGML)。该标准很快就被美国国防部(the U.S. Department of Defense)和美国国内税局(the U.S. Internal Revenue Service)采用。

在随后的几年里,SGML得到了世界上更多国家的认可。自1985年以来,世界上的SGML用户群体开始在英国集会。他们协同GCA一起将SGML在欧洲和北美进行推广,将SGML拓展到更广阔的领域。美国出版协会(the Association of American Publishers,AAP)的电子手稿项目(the Electronic Manuscript Project)将SGML标准应用于编制通用文档,如书籍和期刊等。美国国防部为其计算机辅助采集和后勤支持(Computer-Aided Acquisition and Logistic Support,CALS)小组开发基于SGML的应用程序,其中包括一种流行的表格格式文档类型称为CALS表格。鉴于SGML的成功,国际标准化组织(theInternational Standards Organization,ISO)采纳了SGML标准(ISO 8879:1986)。

SGML被设计为一种灵活的,且无所不包的编码方案。和XML一样,SGML基本上是一个为开发专用化标记语言的工具箱。但是SGML比起XML来大得多,它具有更加灵活的语法以及更多的深奥参数。SGML过于灵活了,以至于开发一个能处理SGML的程序过于复杂和昂贵,只有那些能够承担得起软件开发以及SGML环境维护所需开销的大型机构才能获得SGML带来的好处。

在20世纪90年代早期,由欧洲粒子物理研究所的雇员Tim Berners-Lee和Anders Berglund发布了超文本标记语言,将通用编码革命性地引入到了公共大众的视野中。CERN早在1980开始致力于对SGML的研究和推广,当时就由Anders Berglund开发出一种出版系统用来测试SGML。随后Tim Berners-Lee和Anders Berglund提出一种支持超级文本的SGML文档,这种文档比SGML文档精简和有效。为该超级文本标记语言编写相应软件更为容易,且更容易对文档进行编码。据此,HTMI。得以由实验室应用迅速推广到全世界。HTML的出现极大地推动了世界范围内的互联网的发展,万维网就是一个主要成果。

然而,HTML在某些方面是一种通用编码的倒退。第一,HTML为了获得精简编码方式的有效性,而抛弃了通用编码的一些基本原则。例如,通用编码要求一个文档类型能用于任何目的,要求用户编码时应重载标签而不是重新定义特殊目的的标签。第二,HTML中的很多标签是纯粹追求显示效果的,这显然与通用编码的初衷相违背。这种简化的结构很难区分文档的开始部分和结束部分。如今采用HTML编码的文档非常依赖纯格式化以致不能被用作其他目的。虽然HTML有着诸多的问题,但是我们不能抹杀它在标记语言的发展过程中为Web的发展带来飞跃所起到的重要作用。至少,HTML使得全世界的人对电子文档化和资源链接充满了兴趣。

为了回归到理想的通用编码状态,一些人试着改变SGML以适应Web,或者干脆改变Web以适应SGML,不幸的是,这被证实是非常困难的。SGML是如此的巨大,不可能被塞进小小的Web浏览器中。所以采用一种更小的,却又能保持SGML通用性的语言是唯一可行的途径,由此,令人兴奋不已的可扩展标记语言诞生了。

XML的目标

由于不满于现存信息格式化应用形式,在20世纪90年代中期,由一些公司和组织共同组建的互联网联盟开始致力于创造一种融合SGML灵活性和HTML简单性的标记语言。该组织创建XML的基本原则可以被具体化为以下6个重要原则。

1、形式应遵循功能

标记语言必须非常适合相应的数据。不应创造单一和通用的语言以覆盖所有的文档类型,应允许存在很多语言,而每种语言都能很好地适应它所面向的数据。用户能够自行选择元素名称以及决定它们应该在文档中如何组织。这将带来更好的标识数据、更丰富的格式化形式以及增强数据检索的能力。

2.文档无二义性

一个文档应该有且仅有一种途径解释名称、顺序以及元素的层次关系。下面是一段旧格式的HTML代码:

<html>

<body>

<p>这是一个段落

<p这是另一个段落>

</body>

<html>

在XML出现之前,以上代码中的标记方式是可以被接受的。每个浏览器都知道一个<p>标签的开始表示一个开放的P元素跟在其后面,同时该元素的结束也表示一个新的P元素的开始。这种标记语言所具有的预判能力是XML不包含的,因为这将允许无穷无尽的元素出现,导致可能出现二义性的情况。接下来再看看下面两行代码,第一个元素到底是包含后面那个元素,还是和它邻接呢?

<flooby>这是一个元素

<flooby>这是另一个元素

这个问题不管是用户还是解释器都无法知道。只能去猜,但是可能会猜错。这就是为什么XML对于语法规则要求的如此严格的原因。具有严格的语法规则将使得文档中的错误标记能够更明显地暴露出来,从而减少最终错误的数量。另外也能减少相关软件的复杂度,因为在软件设计中不必加入逻辑推理或修正语法错误的部分。XML的严格语法也许会使用户在编写XML文档时花费很多精力来考虑细节问题,但是考虑到编制好的XML文档的健壮性,花费这点精力还是值得的。

3.标记与显示分离

为了保证文档具有最大的输出格式灵活性,必须尽力保持样式信息处于资料文档之外,并外部存储。一个依赖样式标记的文档是难以重用或被转换为新样式的。例如,在一个文档中,对于包含的外来短语使用斜体标记,而需要重点强调的短语也用斜体标记,代码如下:

<example>歌德曾说过,<i>Leben ist wie Sauerkraut</i>。我<i>非常<i>赞同这个观点。

</example>

现在对这段信息的样式进行修改,将需强调的短语由原来的斜体样式修改为加粗样式,而保持外来短语的斜体样式,用户将不得不人工使用加粗样式标记替换强调短语原有的那些斜体样式标记。上述代码中,由于只有一个强调短语,比较容易替换。但是可以想象一下,如果一个文档有成百上千个这样的强调短语,而且还要判断哪些是外来短语,哪些是强调短语,工作量可想而知。解决类似这种问题最好的办法是,基于需标记信息的含义进行标记,代码如下:

<example>歌德曾说过,<foreignphrase>Leben ist wie Sauerkraut</foreignphrase>。

我<emphasis>非常</emphasis>赞同这个观点。

</exampie>

然后将样式信息定义到另外一个称为样式单(stylesheet)的文档中,而不是将其和标签合二为一。样式单就像一个格式化程序的查找表,它将信息文档中的每个元素与显示设置映射。这使很多事情变得方便和容易。用户可以任意修改存储显示信息的样式单文件,而不是直接对XML文档进行全局查找和替换操作。如果用户不满意一种样式单中的显示方式,他可以使用另一个样式单文件进行替换。并且同一个样式单文件也能应用于多个XML文档。

由于没有将标记数据的标签与样式绑定,可以保持样式处于XML文档之外而增强显示可能性。因为一个XML文档可以应用任何合适的样式单文件,所以人们可以在闲暇时定义很多不同版本的样式单。同样,一个XML文档可以在台式计算机上显示,也能被打印机打印,被手持设备显示,甚至能被语音识别系统朗读出来,做到这些用户不必对原始数据文档有任何知识,只需应用不同的样式单。

4.保持简单性

为了便于XML在世界上的推广,XML必须简单。人们不想去学习一个复杂的系统,而只是为了编写一个文档。XML 1.0版本标准制定上保持了直观性、易于阅读并且语法优雅等特点。XML允许用户遵循一些合理的规则设计自己的标记语言。XML是SGML的一个很小的子集,它摒弃了很多SGML中人们不需要的繁琐部分。简单性对于应用程序开发也带来了好处。如果编写处理XML文件的程序很容易,就会有更多、更便宜的应用程序出现以供人们使用。

5.进行最大化的错误检测

有一些标记语言对于语法错误过于宽容,任凭这类错误的出现和保持。这在某种程度上方便了用户对该标记语言的使用,但是从长远来看后果非常严重。如果在一个文件里出现了错误,那么它就不会按照人们期望的方式工作。比如:在浏览器中的显示效果不可预期。当应用程序读取存在错误的文件时,将会出现执行异常、数据信息丢失,甚至程序崩溃。

XML规范说明中提到,只有一个XML文件满足了一套最小的语法要求,才能说明这个XMI。文件是形式良好的。XML解释器是对XML文档进行语法解析和错误检测的应用程序。它会检测元素名称的拼写,确保元素边界正确,提示对象位置错误以及坏链等。也许人们会觉得XML这些严格的规则过于吹毛求疵,但是你在编写XML文档时尽量保持向标准靠拢是非常值得的,这是XML文档的可用性和持久性的保证。

6.适应各种语言

将标记仅定义到一个狭窄的文化范围内,例如拉丁字母表和英语是不可取的。早先的标记语言就是这么设计的。为了摆脱这种文化的限制,XML的设计者选择Unicode(统一的字符编码标准,采用双字节对字符进行编码)作为XML的字符集,这样就可以支持世界上的各种国家的语言、行业符号以及其他特殊符号。

XML的文档格式

首先介绍XML文档内容的基本单元——元素,它的语法格式如下:

(标签)文本内容</标签>

元素是由起始标签、元素内容和结束标签组成的。用户把要描述的数据对象放在起始标签和结束标签之间。例如:<姓名>王平</姓名>。无论文本内容有多长或者多么复杂,XML元素中可以再嵌套别的元素,这样使相关信息构成等级结构。用这样韵方法定义XML文档数据和数据结构。

除了元素,XML文档中出现的有效对象是:声明、注释、根元素、子元素和属性。

1.声明:声明给XML解析器提供信息,使其能够正确解释文档内容,它的起始标识是“<?”,结束标识是“?>”。例如XML声明:<?xml version="1.0" encoding="GB2312"?>,该声明指明使用的XML版本号和文档使用的字符集是中文字符集“GB2312”。又如显示样式表文件声明:<?xml-stylesheet type="text/xsl" href="e12_2_1.xsl"?>,指明按e12_2_1.xsl样式表文件指定格式显示本XML文档。

2.注释:注释是XML文件中用作解释的字符数据,XML处理器不对它们进行任何处理。注释文本被“<!_”和“_>”标记,注释可以出现在XML元素问的任何地方,但是不可以嵌套。下边是一个注释的例子:<!_这是一个注释_>。

3.根元素和子元素:如果一个元素从文件头的序言部分之后开始,一直到文件尾,包含了文件中所有的数据信息,我们称之为根元素。XML元素是可以嵌套的,那么被嵌套在内的元素称为子元素。在前面的例子中,<学生>就是根元素,<编号>就是<学生>的子元素。一个XML文档中有且仅有一个根元素,其他所有的元素都是它的子元素。

4.属性:属性给元素提供进一步的说明信息,它必须出现在起始标签中。属性以名称/值成对出现,属性名不能重复,名称与取值之间用等号分隔,取值用引号括起来。例如:<工资 currency="US$">25000</工资>,其属性说明了薪水的货币单位是美元。

5.XML文档的基本结构:XML文档的基本结构由序言部分和一个根元素组成。序言包括了XML声明和DTD或XSD声明,DTD(Document Type Define,文档类型定义)和XSD(XML Schema,XML架构)都是用来描述XML文档的数据结构的。

6.格式良好的(Well-Formed)XML文档:一个XML文档首先应当是格式良好的,格式良好XML文档的正式定义位于-xml。格式良好的XML文档除了要满足根元素唯一的特性之外,还包括:

①起始标签和结束标签应当匹配,结束标签是必不可少的;

②大小写应一致,XML对字母的大小写是敏感的,<employee>和<Employee>是完全不同的两个标签,所以结束标签在匹配时一定要注意大小写一致;

③元素应当正确嵌套,子元素应当完全包括在父辈元素中,下面例子就是错误嵌套:<A><B></A></B>,正确的嵌套方式为<A><B></B></A>;

④属性值必须包括在引号中,元素中的属性名是不允许重复的。

三 : XML简介

XML简介

XML代表Extensible Markup Language(eXtensible Markup Language的缩写,意为可扩展的标记语言)。与HTML相似,XML是一种显示数据的标记语言,它能使数据通过网络无障碍地进行传输,并显示在用户的浏览器上。XML是一套定义语义标记的规则,这些标记将文档分成许多部件并对这些部件加以标识。它也是元标记语言,即定义了用于定义其他与特定领域有关的、语义的、结构化的标记语言的句法语言。

XML是元标记语言

关于XML要理解的第一件事是,它不只是像超文本标记语言(Hypertext Markup Language,HTML)或是格式化的程序。这些语言定义了一套固定的标记,用来描述一定数目的元素。如果标记语言中没有所需的标记,用户也就没有办法了。这时只好等待标记语言的下一个版本,希望在新版本中能够包括所需的标记,但是这样一来就得依赖于软件开发商的选择了。

但是XML是一种元标记语言。用户可以定义自己需要的标记。这些标记必须根据某些通用的原理来创建,但是在标记的意义上,也具有相当的灵活性。例如,假如用户正在处理与家谱有关的事情,需要描述人的出生、死亡、埋葬地、家庭、结婚、离婚等,这就必须创建用于每项的标记。新创建的标记可在文档类型定义(Document Type Definition,在以后的篇幅中常简称为DTD)中加以描述。在本书的第二部分中将会学到有关DTD的更多的知识。现在,只需把DTD看作是一本词汇表和某类文档的句法。例如,在Peter Murray-Rust的Chemical Markup Language (化学标记语言,简写为CML)中的MOL.DTD文件中描述了词汇表和分子科学的句法:其中包括chemistry(化学)、crystallography(结晶学)、solid state physics(固体物理)等词汇。它包括用于atoms(原子)、molecules(分子)、bonds(化学键)、spectra(光谱)等的标记。这个DTD可与分子科学领域中的许多不同的人共享。对于其他领域也有其他的DTD,用户还可以创建自己的DTD。

XML定义了一套元句法,与特定领域有关的标记语言(如MusicML、MathML和CML)都必须遵守。如果一个应用程序可以理解这一元句法,那么它也就自动地能够理解所有的由此元语言建立起来的语言。浏览器不必事先了解多种不同的标记语言使用的每个标记。事实是,浏览器在读入文档或是它的DTD时才了解了给定文档使用的标记。关于如何显示这些标记的内容的详细指令是附加在文档上的另外的样式单提供的。例如,考虑薛定格(Schrodinger)方程:

科学论文中充满了这一类方程,但是科学家还必须等待多年,才能让浏览器的开发商支持书写最基本的数学公式所需的标记。音乐家也有同样的局限性,因为Netscape Navigator和Internet Explorer还都不支持乐谱。

有了XML就意味着不必等待浏览器的开发商来满足用户的需要了。用户可以创建自己需要的标记,当需要时,告诉浏览器如何显示这些标记就可以了。

XML标记描述的是文档的结构和意义。它不描述页面元素的格式化。可用样式单为文档增加格式化信息。文档本身只说明文档包括什么标记,而不是说明文档看起来是什么样的。

XML 的起源和目的

1 9 9 6 年,万维网协会(或者叫W 3 C ,h t t p : / / w w w. w 3 c . o rg )开始设计一种可扩展的标记语言,使其能够将S G M L 的灵活性和强大功能与已经被广泛采用的H T M L 结合起来。这种后来变成X M L 的语言继承了S G M L 的规范,而且实际上就是后者的一个子集。从S G M L 入手使得该设计小组能够将精力集中在简化已有的成果上。S G M L 已经提供了一种可以无限扩展的语言,它允许任何人能够根据自己的需要加以扩充。X M L 之所以要较S G M L 更为简化,很大程度上是出于易用性的考虑:人们对标记的读写过程应该使用现有的、简便通用的工具,同时,我们也应当简化计算机对文档和数据交换的处理。由于有太多的可选功能,S G M L 变得过于复杂,以至于很难编写出针对这种语言的普通解释器,而X M L 的解释器则简单得多。此外,X M L 使得现有的I n t e r n e t协议和软件更为协调,从而简化了数据处理和传输。作为一个不错的S G M L 子集,X M L 还保持了对现有的面向S G M L 的系统的向下兼容性,这样,用X M L 标记过的数据就仍然可以在这些系统中使用,为基于S G M L 的行业节省了大笔的改造费用,同时,与We b 的结合也使得它们更便于被访问。1998 年2 月,XML 1.0 成为了W3C 的推荐标准。包括Extended Backus-Naur Form (EBNF) 中语法标识在内的这个正式的规范可以很容易地从W 3 C 的We b 站点(h t t p : / / w w w. w 3 c . o rg / T R / R E C - x m l )上得到;此外,X M L 规范的制定者之一Tim Bray 还在h t t p : / / w w w. x m l . c o m / a x m l / t e s t a x m l . h t m 上提供了一个有着非常不错的注解的版本。在http://www.ucc.ie/xml/上,由Peter Flynn 等人代表W3C 的XML 研究组维护的一个XML 1.0FAQ 还提供了到其他与XML 相关的主题的链接。X M L 是一种界定文本数据的简便而标准的方法。它曾经被人称作“We b 上的A S C I I 码”。就好像你可以使用自己喜爱的编程语言来创建任何一种数据结构,然后同其他人在其他计算平台上使用的其他语言来共享一样。X M L 的标记用来说明你所描述的概念,而属性则用来控制它们的结构。所以,你可以定义自己所设计出的语法并同其他人共享。

XML的特点:

1. 使用有意义的标记(TAG)

HTML:给浏览器读取,不能传达数据的语义。

XML:具有语义。

2. 数据的语义与显示方式分开

HTML:决定数据显示方式的语言。

XML:描述数据内容的语言,本身并不决定数据该

如何显示,数据的显示由XSL决定。

3. 可自定义的标记

HTML:标记由少数权威团体制定,种类有限且不能

随意添加。

XML:可由用户按需要增加标记。如数学标记语言

MATHML、财经标记语言FPML、电子商务标记语言

EBXML等。

4. 严格的语法控制

HTML:语法规则比较多元化,具有较大灵活性。文

件结构比较松散,不能很容易的转换为其他类型格

式,比较难用程序来做大量而有效的处理,数据再

利用的潜力大为降低。

XML:对语法有严格的要求,所有XML的文件都必

须经过严格的“验证”过程才算完成,文件格式容

易转换。

XML的优势:

XML最大的优势在于对各种数据的管理。

任何系统都可以通过XML的解析器来读取XML数据,因此它的数据可以通行各处,而不用担心系统不支持的问题。

1. 数据的检索:

Internet上主要的数据检索方式:分类检索和全文

检索。

检索效率低,或找不到。

XML:在语义标记作为搜索索引;在文件中截取关

键部分。

所有标记内的数据都可视为一个元素,而每一个元素都可以作为数据的索引。

2. 数据的显示:

XML将数据保存的格式与数据显示的方式分开,使

得XML文件可以轻易地更换数据显示的方式,仅需

改变XSL的设置,用户就可以将同一数据制作成

HTML、PDF、WML(Wireless Markup Language)、

HDML(Hand-Held Device Markup Language)等不

同格式,供不同的硬件显示。

3. 数据的交换:

XML语法简单,可以被所有的机器解读,又可以在各种平台上使用,使得XML

有潜力成为一个通行四海皆准的标记语言。

XML的应用:

XML的应用主要有:内容管理(Content Management)、电子邮件的收发与管理、智能型日历、个性化信息服务、电子商务。

Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=17606

xml是什么 XML简介

[收藏到我的网摘] yuan_er发表于 2003年08月22日

xml是什么 XML简介

11:13:00

本文标题:xml-XML简介
本文地址: http://www.61k.com/1084279.html

61阅读| 精彩专题| 最新文章| 热门文章| 苏ICP备13036349号-1