• 热门标签

当前位置: 主页 > 航空资料 > 计算机 >

时间:2010-08-09 13:24来源:蓝天飞行翻译 作者:admin
曝光台 注意防骗 网曝天猫店富美金盛家居专营店坑蒙拐骗欺诈消费者

<GREETING LANGUAGE="English">
Hello XML!
<MOVIE SRC="WavingHand.mov"/>
</GREETING>
在此<GREETING>标记有一个LANGUAGE 属性,其属性值是English。<MOVIE>标记有一个SRC 属性,其属性值为WavingHand.mov。
6.2.5.1 属性名
属性名是字符串,遵循与标记名同样的规则。这就是,属性名必须以字母或下划线(_)开始,名称中后续字符可以包含字
母、数字、下划线、连字符和句号。其中不能含有空格(经常用下划线替代空格)。
同一个标记不能有两个同名的属性。例如,下面的例子是不合法的:
<RECTANGLE SIDE="8cm" SIDE="10cm"/>
属性名是区分大小写的。SIDE 属性与side 或者Side 属性不是同一个属性,因此以下例子是合法的:
<BOX SIDE="8cm" side="10cm" Side="31cm"/>
但是上面的这种写法很迷惑人,最好不要这样书写。
6.2.5.2 属性值
属性值也是字符串。如下面所示的LENGTH 属性,即使字符串表示的是一个数,但还是两个字符7 和2,不是十进制数的72。
<RULE LENGTH="72"/>
如果编写处理XML 的代码,在对字符串执行算术运算之前必须把它们转换为一个数。
与属性名不同,对属性值包含的内容没有任何限制。属性值可以包含空格,可以以一个数字或任何标点符号(有时单括号和
双括号除外)开头。
XML 实用大全
第 139 页
XML 属性值由引号界定。与HTML 属性不同,XML 属性值必须加引号。大多数情况下是使用双引号,但是如果属性值本身含有
一个引号,就需要使用单引号。例如:
<RECTANGLE LENGTH= 7" WIDTH= 8.5" />
如果属性值中含有两种引号,那么其中不用于界定字符串的一个必须用合适的实体引用代替。我通常替换两个,这种方法很
管用。例如:
<RECTANGLE LENGTH= 8&apos;7&quot; WIDTH="10&apos;6&quot;"/>
XML 实用大全
第 140 页
6.3 独立文档中结构完整的XML
尽管可以根据需要编写标记,XML 文档为了保持结构完整必须遵循一定的规则。如果一个文档不是结构完整的,大部分读取
和显示操作都会失败。
事实上,XML 规范严格禁止XML 句法分析器分析和解释结构欠妥的文档。正在执行操作的分析器唯一能做的是报告出错。它
不会修改错误,不会作最大的努力显示作者想要的东西,也不会忽略不当的结构欠妥的标记。它所能做的是报告错误和退出。
这样做的目的是为了避免对错误的兼容性的竞争。这种竞争已使得编写HTML 语法分析程序和显示程序变得非常困难。因为
Web 浏览器承认畸形的HTML,而Web 页面设计者不会特别尽力确保他们的HTML 正确无误。事实上,他们甚至利用个别浏览
器中的错误达到特殊的效果。为了正确显示被大量安装的HTML 页面,每个新的Web 浏览器必须支持已有的Web 浏览器的每
一个细微差别和各自的属性。用户将放弃任何一种严格执行HTML 标准的浏览器。正是为了避免这种遗憾,XML 处理器才只
接受结构完整的XML。
为了使一个文档结构完整,XML 文档中的所有置标和字符数据必须遵守前几节中给出的规则。而且有几条关于如何把置标和
字符数据相互联系起来的规则。这些规则总结如下:
1.文档的开始必须是XML 声明。
2.含有数据的元素必须有起始标记和结束标记。
3.不含数据并且仅使用一个标记的元素必须以/>结束。
4.文档只能包含一个能够包含全部其他元素的元素。
5.元素只能嵌套不能重叠。
6.属性值必须加引号。
7.字符<和&只能用于起始标记和实体引用。
8.出现的实体引用只有&amp;、&lt;、&gt;、&apos;和&quot;。
这八条规则稍加调整就能适用于含有一个DTD 的文档,而且对于定义文档与它的DTD 之间关系的完整性有另外的规则。我们
将在后面几章中介绍。现在请仔细看这些用于没有DTD 文档的规则。
DTD 将在本书第二部分中讨论。
#1:文档必须以XML 声明开始
下面是XML 1.0 中独立文档的XML 声明:
<?xml version="1.0" standalone="yes"?>
如果声明出现,它绝对是该文件最开头部分,因为XML 处理器会读取文件最先的几个字节并将它与字符串<?XML 的不同编码
作比较来确定正在使用的字符串集(UTF-8、大头(高字节先传格式)或者小头(低字节先传格式))。除去看不见的字节
XML 实用大全
第 141 页
顺序记号,在它之前不能有任何东西,包括空格。例如,下面一行用于XML 的开始是不能接受的,因为在该行的前面有多余
的空白。
<?xml version="1.0" standalone="yes"?>
UTF-8 和Unicode 的变种在第7 章“外语和非罗马文本”中讨论。
XML 确实允许完全省略XML 声明。通常不推荐这样做,但这样做有特殊的用途。例如,省略XML 声明,通过连接其他结构完
整的XML 文档有助于重新建立一个结构完整的XML 文档。这种方法将在第9 章讨论。而且,本章后面将要讲述的一种样式能
够编写结构完整的HTML 文档。
#2:在非空标记中使用起始和结束标记
如果忘了结束HTML 的标记,Web 浏览器并不严格追究。例如,如果文档包含一个<B>标记却没有相应的</B>标记,在<B>标
记之后的全部文档将变为粗体。但文档仍然能显示。
XML 不会如此宽松,每个起始标记必须以相应的结束标记结束。如果一个文档未能结束一个标记,浏览器或移交器将报告一
个错误信息,并且不会以任何形式显示任何文档的内容。
#3:用“/>”结束空标记
不包含数据的标记,例如HTML 的<BR>、<HR>和<IMG>,不需要结束标记。但是XML 空标记必须由/>结束,而不是>。例如<BR>、
<HR>和<IMG>的XML 等价物是<BR/>、<HR/>和<IMG/>。
 
中国航空网 www.aero.cn
航空翻译 www.aviation.cn
本文链接地址:XML实用大全(44)