下面给你整理一份XML 标记语言的基本概念及语法入门教程,适合初学者快速掌握 XML 的核心知识。
📘 一、什么是 XML?
- XML(eXtensible Markup Language):可扩展标记语言,用于存储、传输和共享数据。
- 特点:
- 可扩展:用户自定义标签
- 结构化:采用树形结构组织数据
- 可读性强:既可供机器解析,也可人工阅读
- 跨平台:与语言、操作系统无关
- 应用场景:配置文件、数据交换(Web Service)、文档存储、RSS/Atom、电子表格等
📘 二、XML 与 HTML 的区别
| 特性 | XML | HTML |
|---|---|---|
| 目的 | 描述数据 | 展示内容 |
| 标签 | 用户自定义 | 固定标签(、等) |
| 严格性 | 标签必须匹配,区分大小写 | 不严格,可省略闭合标签 |
| 可扩展性 | 高 | 低 |
| 验证 | 可以通过 DTD/XSD 验证 | 不支持结构验证 |
📘 三、XML 文档的基本结构
一个标准 XML 文档通常包含以下部分:
- XML 声明(可选):
<?xml version="1.0" encoding="UTF-8"?>
- 根元素(必需):
- 文档必须有且只有一个根元素
<library>...</library>
- 子元素与属性:
- 元素可嵌套子元素
- 属性用于存储元素的附加信息
<book id="b001" category="Science">
<title>宇宙简史</title>
</book>
- 注释(可选):
<!-- 这是一个注释 -->
- 处理指令(可选):
<?xml-stylesheet type="text/xsl" href="style.xsl"?>
📘 四、XML 标签与元素语法
- 开始标签和结束标签:
<element>内容</element>
- 空元素(自闭合):
<price currency="USD" />
- 元素嵌套:
<book>
<title>XML入门</title>
<author>阿杰</author>
</book>
- 属性书写规则:
- 属性名必须唯一
- 属性值必须用引号(单引号或双引号)
<book id="b001" category="Science" />
📘 五、XML 文本内容与字符处理
- 普通文本
<title>宇宙简史</title>
- CDATA 区块(保留原始文本,不解析特殊字符)
<script><![CDATA[
alert("Hello, XML!");
]]></script>
- 字符实体(转义特殊字符)
| 字符 | 实体 |
|——|——|
|<|<|
|>|>|
|&|&|
|"|"|
|'|'|
📘 六、XML 文档示例
<?xml version="1.0" encoding="UTF-8"?>
<!-- 图书馆示例 -->
<library>
<book id="b001" category="Science">
<title>宇宙简史</title>
<author>Stephen Hawking</author>
<price currency="USD">68</price>
</book>
<book id="b002" category="History">
<title>人类简史</title>
<author>Yuval Noah Harari</author>
<price currency="USD">45</price>
</book>
</library>
- 根元素:
library - 子元素:
book,title,author,price - 属性:
id,category,currency - 注释:提供额外说明
📘 七、XML 基本语法规则总结
- XML 文档必须有唯一根元素
- 标签必须正确闭合,区分大小写
- 属性值必须使用引号
- 元素可嵌套,禁止交叉嵌套
- 支持注释与处理指令
- 特殊字符需使用实体转义
- 文档可通过 DTD/XSD 进行结构验证
📘 八、初学者练习建议
- 设计一个简单的数据结构,如学生信息表、图书信息表
- 使用元素表示主要内容,属性表示附加信息
- 尝试添加注释、CDATA 和字符实体
- 用浏览器或 XML 编辑器打开验证语法正确性
- 学习 DOM/SAX 解析器读取 XML 内容
这份教程可作为 XML 标记语言入门 的完整参考,从概念到语法、从属性到元素、从字符处理到文档结构都覆盖了。
发表回复