专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »XML教程 » cdata:XML新增批注、处理指令与CDATA 区段 »正文

cdata:XML新增批注、处理指令与CDATA 区段

来源: 发布时间:星期五, 2008年9月26日 浏览:143次 评论:0
在本章中,你将学习如何加入三种XML 标签到文件中:批注、处理指令,与CDATA 区段。虽然这些项目在格式正确(或有效)的XML 文件中并不是必要的,但是它们拥有极大用处。你可以使用批注来让文件更具可读性,也可以使用处理指令来修改应用软件处理或显示文件的方法。同时你也可以使用CDATA 区段来将字符的任何组合包含在元素的字符数据中。

加入批注

如同你在第一章中学到的,XML 规格的第6 个目标就是「XML 文件应该是易读的且合理清楚的」。虽然XML 处理器通常会忽略批注,但是适当放置且具意义的批注可以大大增进XML 文件的可读性与清楚度,就像批注可以让程序的原始码如C 或BASIC 变得更容易了解。
注意
在Microsoft Internet Explorer 5 中,XML 处理器并不会将批注的文字解析成XML 卷标,也不会以任何其它方式来处理批注。然而,处理器让批注的文字可以被HTML 网页中的script 使用。在第九章中,你将学习如何使用script 来存取批注文字,就像使用XML 文件中其它的组件一样。
如果你将文件于浏览器中直接开启,而且文件并没有参照的样式表,则Internet Explorer 5 会将所有的批注显示于XML 文件中。

批注的型式

批注以<!--字符起始,并以-->字符结束。在这两个定义符号之间,你可以输入任何想要的文字-除了双连符号(--)之外。你甚至可以输入被禁止的(<)与(&)符号。下面是一段合法批注的范例:
<!--Here you can type any text except a double hyphen. The <and &characters are OK!-->

你可以放置批注的位置

你可以将批注放在XML 文件中标签之外的任何地方。换言之,你可以将它们放在文件的序文中:
<?xml version=\"1.0\"?>
<!--Here is a comment in the prolog.-->
<DOCELEMENT>
This is a very simple XML document.
</DOCELEMENT>
你可以将批注接在文件的元素之后:
<?xml version=\"1.0\"?>
<DOCELEMENT>
This is a very simple XML document.
</DOCELEMENT>
<!--This comment follows the document element.-->
而你也可以将批注放在文件的内容中:
<?xml version=\"1.0\"?>
<DOCELEMENT>
<!--This comment is part of the content of the root element.-->
This is a very simple XML document.
</DOCELEMENT>
下面是一个违法的批注范例,因为批注被放在标签中:
<?xml version=\"1.0\"?>
<DOCELEMENT <!--This is an ILLEGAL comment!-->>
This is a very simple XML document.
</DOCELEMENT>
然而,你可以将批注放在文件型态宣告(DTD)中-虽然DTD 也是标签的一种-但只要批注不是位在DTD 里其它的标签中即可。你将在第五章学习DTD 的相关知识与如何将批注放在DTD中。

使用处理指令

处理指令的目的是提供XML 处理器传送给应用软件的信息。
注意
回想第二章所介绍的,XML 处理器是一个读取与储存XML 文件内容的软件模块。应用软件是一个个别的软件模块,负责从处理器取得文件的内容并管理与显示这些内容。当你在Internet Explorer 5 中显示XML 时,浏览器会提供XML 处理器与少部分的应用软件。(如果你撰写script来管理与显示XML 文件,你必须自己提供部分的应用软件)

处理指令的类型

处理指令拥有下列一般类型:
<?target instruction ?>
这里的target 是该指令被导引到的应用软件的名字。任何的名称都可以,只要遵守下列规则即可:
名字必须以字母或底线(_)开始,后面接着零或多个字母、数字、句点(.)、连字号(-),或底线(_)。
名称「xml」,不管是大写字母或小写字母组成的都会被保留。(如同你所见到的,你使用「xml」以小写字母来代表文件的XML 宣告,这也是处理指令的一种。)
而instruction 则是被传送到应用软件的信息。它是由任何连续的字符组成,除了「?>」字符对以外(它被保留作终止处理指令用)。

如何使用处理指令

你可以在XML 文件中使用的特殊处理指令是根据读取文件的处理器而定。如果你使用Internet Explorer 5 当作XML 处理器(如同本书中普遍使用的),你将发现处理器的两个主要用途:
你可以使用标准的、保留的处理指令来告诉Internet Explorer 5 如何处理或显示文件。你在本书中见到的范例是处理指令告诉Internet Explorer 5 去使用特定样式表来显示文件。例如,下面的处理指令告诉Internet Explorer 5 使用Inventory01.css 的CSS 来显示文件:
<?xml-stylesheet type=\"text/css\" href=\"Inventory01.css\"?>
如果你撰写网页的script 来处理与显示XML 文件,你可以将任何非保留的处理指令加入到文件中,而且你的script 会读取这些指令并做出适当的处理。例如,你可能会将下面的处理指令加到文件中来告诉你的script 要显示的详细程度:
<?MyScript detail=\"2\" ?>
在第九章中,你将学习如何使用script 来存取XML 文件中的组件,包括任何的处理指令。

你可以放置处理指令的地方

你可以将处理指令加到XML 文件中标签以外的任何地方-意即,你可以将指令放在与放置批注相同的地方:在文件的序文中,后面接着文件元素,或者就放在元素的内容中。下面是一份处理指令位在每一个合法位置的XML 文件:
<?xml version=\"1.0\"?>

相关文章

读者评论

  • 1wo (218.249.22.*) 发布于:星期一, 2008年12月15日10:52
    不错,谢谢
  • 1 共1条 分1页

发表评论

  • 昵称:
  • 内容: