曝光台 注意防骗
网曝天猫店富美金盛家居专营店坑蒙拐骗欺诈消费者
<TEAM_NAME>Mets</TEAM_NAME>
</TEAM>
<TEAM>
<TEAM_CITY>Philadelphia</TEAM_CITY>
<TEAM_NAME>Phillies</TEAM_NAME>
</TEAM>
</DIVISION>
<DIVISION>
<DIVISION_NAME>Central</DIVISION_NAME>
<TEAM>
<TEAM_CITY>Chicago</TEAM_CITY>
<TEAM_NAME>Cubs</TEAM_NAME>
XML 实用大全
第 246 页
</TEAM>
</DIVISION>
<DIVISION>
<DIVISION_NAME>West</DIVISION_NAME>
<TEAM>
<TEAM_CITY>Arizona</TEAM_CITY>
<TEAM_NAME>Diamondbacks</TEAM_NAME>
</TEAM>
</DIVISION>
</LEAGUE>
<LEAGUE>
<LEAGUE_NAME>American</LEAGUE_NAME>
<DIVISION>
<DIVISION_NAME>East </DIVISION_NAME>
<TEAM>
<TEAM_CITY>Baltimore</TEAM_CITY>
<TEAM_NAME>Orioles</TEAM_NAME>
</TEAM>
</DIVISION>
<DIVISION>
<DIVISION_NAME>Central</DIVISION_NAME>
<TEAM>
<TEAM_CITY>Chicago</TEAM_CITY>
<TEAM_NAME>White Sox</TEAM_NAME>
XML 实用大全
第 247 页
</TEAM>
</DIVISION>
<DIVISION>
<DIVISION_NAME>West</DIVISION_NAME>
<TEAM>
<TEAM_CITY>Anaheim</TEAM_CITY>
<TEAM_NAME>Angels</TEAM_NAME>
</TEAM>
</DIVISION>
</LEAGUE>
</SEASON>
<SIGNATURE>
<COPYRIGHT>Copyright 1999 Elliotte Rusty Harold</COPYRIGHT>
<EMAIL>elharo@metalab.unc.edu</EMAIL>
<LAST_MODIFIED>March 10, 1999</LAST_MODIFIED>
</SIGNATURE>
</DOCUMENT>
在内部和外部DTD 子集中的同名元素之间发生冲突的情况下,内部声明的元素具有优先权。这种优先权提供了不完善部分的
继承机制。例如,如要推翻PLAYER 元素的定义,以便只包含击球统计数据,而不要投球统计数据。这时可使用大多数的棒
球DTD 的相同声明,但却要将PLAYER 元素作如下改变:
<!DOCTYPE SEASON SYSTEM "baseball.dtd" [
<!ELEMENT PLAYER (GIVEN_NAME, SURNAME, P, G,
GS, AB?, R?, H?, D?, T?, HR?, RBI?, SB?, CS?,
SH ?, SF?, E?, BB?, S?, HBP?)
>
XML 实用大全
第 248 页
]>
XML 实用大全
第 249 页
8.8 本章小结
在本章中,学习了如何使用DTD 来描述文档结构,包括文档包含的必需元素和任选元素,以及这些元素间的相关关系。特别
是学习了以下内容:
• 文档类型定义(DTD),它提供了文档包含的元素、标记、属性和实体及相互关系的清单。
• 文档序言包含文档类型声明,文档类型声明指明基本元素并包含DTD。DTD 处在XML 声明与实际文档开始之间。
由<!DOC-TYPE ROOT [和]>加以界定,ROOT 是基本元素名称。
• DTD 列出了文档的可允许的标记和结构。遵守DTD 规则的文档才是合法的。
• 元素类型声明声明元素名称和子元素。
• 元素类型声明中用逗号分隔的子元素在文档中出现的顺序必须与声明中的顺序相同。
• 加号表示元素可以出现一次或多次。
• 星号表示元素可以出现零次或多次。
• 问号表示元素可以出现零次或一次。
• 竖线表示可以使用这一个也可以使用另一个元素。
• 括号可以组合子元素,以便使元素声明更详尽。
• 混合内容包含元素和可析的字符数据,但会限制父元素可实现的结构。
• 空元素用EMPTY 关键词声明。
• 注释使DTD 更具可读性。
• 在文档类型声明中利用SYSTEM 关键词和一个URL 可以定位外部DTD。
• 在文档类型声明中用PUBLIC 关键词可以定位标准DTD。
• 内部DTD 子集中的声明可推翻外部DTD 子集中的声明。
在下一章中,读者可学到有关DTD 的更多知识,包括实体引用如何提供文本替换,如何将DTD 与它所描述的文档分开,以便
易于在文档间共享。还会学到如何用多份DTD 描述单个文档。
XML 实用大全
第 250 页
第9 章 实体和外部DTD 子集
一个简单的XML 文档从许多不同的资源和文件中取得数据和声明。实际上,有些数据直接来自数据库、CGI 脚本或其他非文
件格式资源。无论采取何种形式,保存XML 文档片段的项目称为实体。实体引用把实体载入到XML 主文档中。通用实体引用
载入数据到XML 文档的基本元素中,而参数实体引用载入数据到文档的DTD 中。
本章的主要内容如下:
• 什么是实体?
• 内部通用实体
• 外部通用实体
• 内部参数实体
• 外部参数实体
• 怎样从局部开始创建文档
• 结构完整文档中的实体和DTD
9.1 什么是实体?
从逻辑上说,一个XML 文档由一个序进程构成,序进程后有一严密地包含了所有其他元素的基本元素。但XML 文档的实际数
据可以扩展分布在若干文档中。例如,即使一个棒球联盟中包含了大约900 个的所有球员,每个PLAYER 元素也可以以独立
的文件形式存在。包含XML 文档细节内容的存储单元称为实体(entities),实体可能是由一个文件、一个数据库记录或其
他包含数据的项目组成。例如,本书中所有完整的XML 文件都是实体。
包含XML 声明或文档类型声明的存储单元和基本元素称为文档实体(document entity)。不过基本元素和它的派生元素也
中国航空网 www.aero.cn
航空翻译 www.aviation.cn
本文链接地址:
XML实用大全(73)