文章目录
- [1. xml简介](#1. xml简介)
- [2. xml快速入门](#2. xml快速入门)
- [3. xml的元素(标签)定义](#3. xml的元素(标签)定义)
- [4. xml标签的命名规范](#4. xml标签的命名规范)
- [5. xml的属性定义和注释](#5. xml的属性定义和注释)
- [6. 转义字符](#6. 转义字符)
- [7. CDATA区](#7. CDATA区)
- [8. xml的处理指令](#8. xml的处理指令)
- [9. xml的约束](#9. xml的约束)
1. xml简介
XML(eXtensible Markup Language)是一种用于描述数据的标记语。
它以纯文本的方式存储数据,并使用标签来标记数据的结构和含义。XML被设计用于传输和存储数据,同时也可作为配置文件和数据交换的格式。
2. xml快速入门
创建一个xml文档,必须要有文档说明且必须放在第一行
xml
<?xml version="1.0" encoding="UTF-8" ?>
-
version(必须要有): 表示xml的版本(1.0和1.1)
- 注: 1.1不会向下兼容,一般都是1.0
-
encoding(可选): 表示xml的编码格式,例如:UTF8,GBK等
xml使用示例:
xml
<?xml version="1.0" encoding="UTF-8" ?>
<root>
<person>111</person>
</root>
对于xml文档,可以使用浏览器打开
3. xml的元素(标签)定义
-
xml文档中只能有一个根标签
-
用户可自定义标签,例如:
<person></person>
- 结束标签比开始标签多了一个
/
- 结束标签比开始标签多了一个
-
标签的定义有开始必须要有结束
-
标签必须是合理嵌套
4. xml标签的命名规范
- 标签区分大小写
- 标签不能以数字或者下划线开头
- 不能以xml等关键字开头
- 不能包含空格
- 名称中间不能有
:
注: xml在解析时会把空格和换行都当成内容来处理
5. xml的属性定义和注释
属性定义:
- 每个标签可以有多个属性,但是属性不能相同
- 属性和属性之间要使用引号(单引号或双引号)
- 属性名称的命名规范和元素名称的命名规范相同
示例:
注释:
xml
<!-- 注释内容 -->
注释不能嵌套
6. 转义字符
在XML中,有几个特殊字符被认为是保留字符,不能直接在文本中使用,而是需要使用转义字符来表示。
以下是XML中常见的转义字符:
<
- 表示小于号<
>
- 表示大于号>
&
- 表示和符号&
"
- 表示双引号"
'
- 表示单引号'
示例:
7. CDATA区
CDATA(Character Data)区是XML中的一个特殊区域,用于包含文本数据,其中可以包含任何字符,包括XML保留字符和特殊字符,而不需要进行转义。
CDATA区是由<![CDATA[
开始,以]]>
结束。
xml
<![CDATA[
]]>
CDATA区中的内容将被视为纯文本,不会被解析为XML标记。CDATA区常用于包含包含特殊字符或大量文本的数据,以避免不必要的转义。
示例:
8. xml的处理指令
XML中,处理指令是用来指导XML解析器或其他处理工具对XML文档进行处理的指令。它们以<?
开始,以?>
结束,并位于XML文档的开头。
常见的XML处理指令包括:
- XML声明:
<?xml version="1.0" encoding="UTF-8"?>
。这是XML文档的第一个处理指令,用于指定XML版本和字符编码。 - 样式表处理指令:
<?xml-stylesheet type="text/xsl" href="style.xsl"?>
。用于引用XSL样式表,用于对XML文档进行转换和呈现。 - 实体处理指令:
<!ENTITY name "value">
。用于定义实体,可以在XML文档中引用并展开为对应的值。 - 命名空间处理指令:
xmlns:prefix="namespace"
。用于定义命名空间和命名空间前缀,以在XML文档中标识元素和属性的命名空间。
这些处理指令可以向XML解析器提供关于XML文档的附加信息,或者指示如何处理XML文档。处理指令通常出现在XML文档的开头,但不是必需的。
9. xml的约束
xml的约束就是指xml中可以出现哪些元素以及不能出现哪些元素
常见的两种约束:
- DTD
- schema
DTD是一种基本的XML约束语言,用于定义XML文档的元素、属性和实体,以及它们之间的关系和约束。DTD使用一组规则来验证XML文档的结构和内容,确保它们符合DTD中定义的规范。
Schema是一种更强大和灵活的XML约束语言,用于定义XML文档的结构、数据类型和约束。XML Schema使用XML语法来定义元素、属性、数据类型、约束和关系,可以进行更复杂的验证和约束。