XML概述
1. XML概述关于XML的定义有以下几种说法: ① XML是可扩展标记语言(Extensible Markup Language)的缩写。 ② XML是一种类似于HTML的标记语言。 ③ XML是描述数据的,重点描述“数据是什么”。 ④ XML的标记不是在XML中预定义的,你必须定义自己的标记。 ⑤ XML使用文档类型定义(DTD)或者模式(Schema)来描述数据。 ⑥ XML使用DTD或者Schema后就是自描述语言。 ⑦ XML数据和格式是分离的,XML文档本身不定义如何来显示数据。 ⑧ XML并不只是标记语言,它只是用来创造标记语言(比如HTML)的元语言。 ⑨ 不能用XML来直接写网页。即便是包含了XML数据,依然要转换成HTML格式才能在浏览器上显示。 ⑩ XML可以交换数据、共享数据、存储数据、利用数据、创建新的语言。 2. XML和HTML的主要区别XML和HTML的主要区别如下: ① XML不是HTML的替代品,XML和HTML是两种不同用途的语言。 ② XML是被设计用来描述数据的。重点是:什么是数据,如何存放数据。 ③ HTML是被设计用来显示数据的。重点是:显示数据以及如何更好地显示数据。 ④ HTML是与显示信息相关的,XML则是与描述信息相关的。 ⑤ HTML将数据和显示混在一起,而XML则将数据和显示分开来。 ⑥ XML是元语言,HTML是具体的语言。XML可以定义一种新的语言,而HTML则不能。人们可以用XML语法定义出新的语言,如XML是WAP和WML语言的母亲。 3. XML与HTML的举例说明XML可以用来描述数据,重点是“数据是什么”。 HTML则是用来显示数据,重点是“如何显示数据”。 HTML是一个定型的标记语言,它用固有的标记来描述、显示网页内容。比如,<H1>表示首行标题,有固定的尺寸。相对的,XML则没有固定的标记,不能描述网页具体的外观和内容,它只是描述内容的数据形式和结构。 在HTML里,有许多固定的标记,在使用时,不能使用HTML规范里没有的标记。而在XML中,你能建立任何你需要的标记。比如,你的文档里包含一些游戏的攻略,你可以建立一个名为<game>的标记,然后在<game>下再根据游戏类别建立<RPG>、<SLG>等标记。只要这些标记清晰,易于理解你可以建立任何数量的标记。 下面以test.html、test.xml来说明两者的不同。 test.html <html> <head> <TITLE>A Simple HTML Example</TITLE> </head> <body> <H1>HTML is Easy To Learn</H1> <P>Welcome to the world of HTML,This is the first paragraph.</P> </body> </html> test.xml <note> <to>Lin</to> <from>Ordm</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body> </note> 对test.html和test.xml的说明如下: test.html中的html、head、 body、H1、P这些标记类型、含义及用法已经是明确的,固定的。HTML每一版本标记的类型、用法及含义由W3C进行公布,全世界遵守这个统一标准。 test.xml中的note、to、from、heading、body这些标记类型、含义及用法可以自行定义,通信的多方自行约定含义和约定解析。 如IE、firefox浏览器能根据HTML标记(如title、body)解析显示HTML文件。而在只有一个XML内容文件下,浏览器无法解析XML标记和内容。因为HTML标记语法语义已经确定,而XML标记要自己定义语法语义。 4. XML的使用XML的使用场合如下: ① XML是被设计用来存储数据、携带数据和交换数据的。 ② XML可以从HTML中分离数据。通过XML,可以在HTML文件之外存储数据。 ③ XML用于交换数据。通过XML,可以在不兼容的系统之间交换数据。 ④ 使用XML,可以在网络中交换电子商务信息。 ⑤ XML可以用于共享数据。通过XML,纯文本文件可以用来共享数据。 ⑥ XML可以充分利用数据。使用XML,你的数据可以被更多的用户使用。 ⑦ XML可以用于创建新的语言,它是WAP和WML语言的母亲。 ⑧ 如果开发者有足够的预见性,那么将来的应用程序都应该使用XML的形式来存储数据。 5. XML的优势HTML是用来设计人机交流用的,对布局、外观方面很擅长,但缺乏对内容、也就是信息含义的表达。除了少数几个用来表达内容或文义的标签,如<p>、<address>、<title>、<strong>外,几乎全都是用来设计网页格式的。假设需要一个能将商品价格明确标示的<price>标签,HTML则无能为力。 XML和HTML的一大不同处,就在于在XML文件里,我们可以自由定义标签。定义出来的标签,可以按自己的意思充分地表达文件的内容,譬如可以定义<name>、<bookinfo>这样充分达意的标签。在XML中,只注重内容,这和HTML强调布局的做法不大相同。XML文件的内容和外观设计是完全分开的。外观变动时,XML文件完全不受影响。 同时,XML的自描述性有利于资料的交换和传递,商务往来的公司之间,用不着、也不需要知道对方内部是采用何种格式储存资料,大家都用XML来做中介格式即可。如此一来,某个系统内部的变更,并不会殃及和它交流往来的其他系统,因而XML提供了一层理想的缓冲。很多人认为,XML将是电子商务理想的格式标准。 XML除了上述描述数据的优势外,还具有如下几个优势:XML可以广泛的运用于Web的任何地方,XML可以满足网络应用的需求,使用XML将使编程更加简单,XML便于学习和创建,XML文件代码更清晰和便于阅读理解。 6. XML组成XML由XML对象组成。XML对象可以是元素、属性、CDATA、附加内容、文本节点、注释和处理指令。XML对象又可分为包含“简单内容”和包含“复杂内容” 两类,有子节点的XML对象归入包含复杂内容的一类。如果XML对象是属性、注释、处理指令或文本节点之中的任何一个,我们就说它包含简单内容。 7. XSLXSL是指可扩展样式表语言(EXtensible Stylesheet Language)。它用于将XML文档的内容转换成另一种形式的文档,转换后的文档能被一些应用软件更好的显示。XSL之于XML,就像CSS之于HTML。XML用于承载数据,而XSL则用于设置数据格式。XSL专门用于处理XML文档,并且遵循XML语法。因此,它只能在支持XML的应用程序中与XML结合使用。下图19-1画出了XSL与其他语言的层次关系。
图19-1 XSL树形层次图 XSL包括以下三部分。 ① XSLT:XSLT是一种转换XML文档的语言,如将XML文档转换成HTML文档或PDF文档等。 ② XPath:是在XML文档中查找定位信息的语言。 ③ XSL-FO:一种用于格式化XML文档的语言。 摘录自《深入浅出Linux工具与编程》 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |