XML文档类型定义(DTD)与ID属性解析
需积分: 10 119 浏览量
更新于2024-08-17
收藏 585KB PPT 举报
"ID类型-DTD和XML文档"
在XML中,ID类型是一种特殊的属性类型,用于为文档中的元素提供唯一的标识。这与HTML中的ID属性类似,允许引用和链接到文档内的特定位置。ID类型的值必须是XML名称,这意味着它们必须以字母、数字或下划线开头,并且不允许包含空格。为了保持唯一性,不应为ID类型的属性预设缺省值,特别是使用FIXED类型,因为这可能导致多个元素共享相同的ID。通常,使用REQUIRED类型作为缺省值更为合适,但也并非强制要求。某些情况下,可以根据应用需求选择IMPLIED类型,表示元素可以不具有ID。
以下是一个示例的DTD(文档类型定义)和XML文档:
```xml
<?xml version = "1.0"
encoding="GB2312"
standalone = "yes"?>
<!DOCTYPE 联系人列表[
<!ELEMENT 联系人列表 ANY>
<!ELEMENT 联系人(姓名,EMAIL)>
<!ELEMENT 姓名(#PCDATA)>
<!ELEMENT EMAIL(#PCDATA)>
<!ATTLIST 联系人 编号 ID #REQUIRED>
]>
<联系人列表>
<联系人 编号="1">
<姓名>张三</姓名>
<EMAIL>zhang@aaa.com</EMAIL>
</联系人>
<联系人 编号="2">
<姓名>李四</姓名>
<EMAIL>li@bbb.org</EMAIL>
</联系人>
</联系人列表>
```
在这个例子中,DTD定义了一个名为"联系人列表"的XML结构,其中包含"联系人"元素,每个"联系人"元素又包含"姓名"和"EMAIL"子元素。"联系人"元素有一个ID类型的属性"编号",这是必需的(#REQUIRED)。XML文档随后展示了如何根据这个DTD实例化数据。
XML的核心价值在于其自定义标记的能力,它允许创建符合特定领域需求的结构化文档。一个XML文档不仅要符合XML语法("形式良好"),还需要遵循DTD的规则以确保"有效"。DTD作为一种元标记,定义了XML文件的结构、元素、标签、属性和实体。它可以是简单的,仅列出元素和它们的属性,也可以是复杂的,描述元素间的层次和相互关系。
DTD使用正则表达式来规范XML文件的结构,解析器会检查XML内容是否符合这些规则。如果XML文件中的任何信息不符合DTD,那么该文件将被视为无效。在示例XML文档中,"联系人列表"的每个"联系人"都需要一个唯一的"编号"ID,以区分不同的联系人记录。
在XML文件的序言中可以直接包含DTD定义,这称为内部DTD。此外,也可以通过外部引用来包含DTD,这样可以将XML结构和语法规则分开管理,便于重用和维护。无论使用内部还是外部DTD,其目的都是确保XML文档的结构和内容遵循预定义的规则,从而使数据交换和处理更加可靠和一致。
179 浏览量
2012-05-21 上传
2022-07-13 上传
2023-05-29 上传
2024-11-14 上传
2023-05-28 上传
118 浏览量
2023-06-01 上传
2023-06-01 上传
花香九月
- 粉丝: 29
- 资源: 2万+
最新资源
- 大酒店员工手册
- xoak-feedstock:一个xoak的conda-smithy仓库
- 文件夹
- 易语言源码易语言使用脚本开关系统还原源码.rar
- SleepDisplay:命令行工具可让您的Mac显示器直接进入睡眠状态
- Papara Excel İşlem Özeti-crx插件
- python程序设计(基于网络爬虫的电影评论爬取和分析系统)
- OlaMundo:Primeiro存储库
- 零售业管理:价格策略
- 投资组合
- java笔试题算法-Complete-Striped-Smith-Waterman-Library:Complete-Striped-Smit
- ros_arm_control.7z
- tripitaka:Tripitaka的依赖性很低,没有针对Node.js的简洁记录器
- 以品类管理为导向的连锁企业管理功能重组
- 长颈鹿
- 三菱Q系列PLC选型工具软件.zip