XML规范详解:从Well-formed到Validated

需积分: 9 2 下载量 68 浏览量 更新于2024-07-29 收藏 757KB PPT 举报
"这篇资源详细介绍了XML规范,包括XML声明、处理指令、元素与标记、特殊字符、CDATA段、文本数据、属性、注释、名称空间以及区分大小写等核心概念,旨在帮助读者理解并创建合法、规范的XML文件。" 在XML(可扩展标记语言)中,规范的XML文件是指遵循W3C制定的语法规则的文档,这使得XML解析器能够正确解析和理解文件内容。以下是对各个知识点的详细解释: 1. **XML声明**:XML文件通常以XML声明开始,如`<?xml version="1.0" encoding="GB2312"?>`,它指定了XML的版本和字符编码。 2. **处理指令(Processing Instructions, PI)**:用于向处理XML的程序传递指令,如`<?target data?>`,这里的`target`是处理指令的目标,`data`是相关数据。 3. **元素与标记**:XML文档由元素组成,元素通过开始标记 `<tag>` 和结束标记 `</tag>` 定义,如 `<RESTAURANT_NAME>` 和 `</RESTAURANT_NAME>`。 4. **特殊字符**:XML有预定义的特殊字符实体,如 `&amp;` 代表 `&`,`&lt;` 代表 `<`,`&gt;` 代表 `>`,`&quot;` 代表 `"`, `&apos;` 代表 `'`,以防止字符冲突。 5. **CDATA段**:用于包含不能被解析器解析的纯文本数据,如`<![CDATA[这里的数据不会被解析]]>`。 6. **标记的文本数据**:元素可以包含文本数据,如`<RESTAURANT_NAME>中华园</RESTAURANT_NAME>`中的“中华园”。 7. **属性**:元素可以拥有属性,提供附加信息,如`<CONTACT email="chinagarden@china.com">`。 8. **注释**:XML支持使用`<!-- 这是注释 -->`进行注释,这些注释不会被解析器处理。 9. **名称空间**:允许在同一文档中使用相同标签名但来自不同来源的元素,通过前缀如`xmlns:prefix="URI"`来区分。 10. **区分大小写**:XML是大小写敏感的,`<Tag>`和`<tag>`被视为不同的元素。 此外,XML还区分了规范的XML文件和有效的XML文件。一个规范的XML文件符合基本的XML语法,而有效的XML文件除了遵循基本语法规则外,还必须符合文档类型定义(DTD)或XML Schema等额外约束,以确保文档结构的正确性。 例如,文档`ZJU.dtd`定义了一个名为“联系人列表”的元素,它可以包含任意数量的“联系人”子元素,每个“联系人”元素又包含“姓名”、“ID”、“公司”、“EMAIL”、“电话”和“地址”子元素。这样的文档在满足DTD规定后,将成为一个有效的XML文件。有效的XML文档意味着其结构不仅形式良好,而且满足了预先定义的结构和数据类型要求。