XML 语法详细讲解

简介: XML 语法详细讲解

XML 语法

一个 XML 文件分为如下几部分内容

1、文档声明

2、元素

3、属性

4、注释

5、CDATA 区 、特殊字符, 后面会说

<?xml version="1.0" encoding="utf-8"?>

1、XML 声明放在 XML 文档的第一行

2、XML 声明由以下几个部分组成:

3、version - -文档符合 XML1.0 规范,我们学习 1.0

4、encoding - -文档字符编码,比如"utf-8"

元素

元素语法要求

1. 每个 XML 文档必须有且只有一个根元素。

2.根元素是一个完全包括文档中其他所有元素的元素。

3.根元素的起始标记要放在所有其他元素的起始标记之前。

4.根元素的结束标记要放在所有其他元素的结束标记之后

5.XML 元素指 XML 文件中出现的标签,一个标签分为开始标签和结束标签,一个标签有如下几种书写形式

包含标签体:<a>www.sohu.cn</a>

不含标签体的:<a></a>, 简写为:<a/>

6.一个标签中也可以嵌套若干子标签。但所有标签必须合理的嵌套,绝对不允许交叉嵌套

7. 叫法 student 元素,节点,标签

1. <?xml version="1.0" encoding="utf-8" ?>
2. <!--
3. 1.每个 XML 文档必须有且只有一个根元素。
4. 2.根元素是一个完全包括文档中其他所有元素的元素。
5. 3.根元素的起始标记要放在所有其他元素的起始标记之前。
6. 4.根元素的结束标记要放在所有其他元素的结束标记之后
7. 5.XML 元素指 XML 文件中出现的标签,一个标签分为开始标签和结束标签,一
8. 个标签有如下几种书写形式
9. 包含标签体:<a>www.sohu.cn</a>
10. 不含标签体的:<a></a>, 简写为:<a/>
11. 6.一个标签中也可以嵌套若干子标签。但所有标签必须合理的嵌套,绝对不允许
12. 交叉嵌套
13. 7. 叫法 student 元素,节点,标签
14. -->
15. <students>
16. <student id="200">
17. <name>123</name>
18. <age>10</age>
19. <gender>男</gender>
20. </student>
21. <student id="200">
22. <name>66</name>
23. <age>18</age>
24. <gender>女</gender>
25. </student>
26. <school>大学</school>
27. <city/>
28. </students>

2. 出现的标签

XML 元素指 XML 文件中出现的标签,一个标签分为开始标签和结束标签,一个标签有如

下几种书写形式,例如:

  1. 包含标签体:<a>www.sohu.cn</a>
  2. 不含标签体的:<a></a>, 简写为:<a/>
  3. 一个标签中也可以嵌套若干子标签。但所有标签必须合理的嵌套,绝对不允许交叉嵌套 ,

例如:<a>welcome to <b>www.sohu.org</a></b>

提示:在很多时候,说 标签、元素、节点是相同的

4. XML 元素命名规则

  1. 区分大小写,例如,<P>和<p>是两个不同的标记。
  2. 不能以数字开头。
  3. 不能包含空格。
  4. 名称中间不能包含冒号(:)。
  5. 如果标签单词需要间隔,建议使用下划线 比如 <book_title>hello</book_title>
1. <?xml version="1.0" encoding="utf-8" ?>
2. <!--解读
3. 1.区分大小写,例如,<P>和<p>是两个不同的标记。
4. 2.不能以数字开头。
5. 3.不能包含空格。
6. 4.名称中间不能包含冒号(:)。
7. 5.如果标签单词需要间隔,建议使用下划线 比如 <book_title>hello</book_title>
8. -->
9. <students>
10. <student id="10">
11. <name>www</name>
12. <age>10</age>
13. <gender>男</gender>
14. <email>@</email>
15. <Email>@</Email>
16. <job>java</job>
17. </student>
18. <student id="11">
19. <name>mary</name>
20. <age>33</age>
21. <gender>女</gender>
22. </student>
23. </students>

属性

1. 属性介绍

<Student ID="100">

<Name>TOM</Name>

</Student>

2. 属性值用双引号(")或单引号(')分隔(如果属性值中有',用"分隔;有",用'分隔)

3. 一个元素可以有多个属性,它的基本格式为:<元素名 属性名="属性值">

4. 特定的属性名称在同一个元素标记中只能出现一次

5. 属性值不能包括& 字符

6. 属性应用实例 修改 students04.xml        

1. <?xml version="1.0" encoding="utf-8" ?>
2. <!-- 解读
3. 1.属性值用双引号(")或单引号(')分隔(如果属性值中有',用"分隔;有",
4. 用'分隔)
5. 2.一个元素可以有多个属性,它的基本格式为:<元素名 属性名="属性值">
6. 3.特定的属性名称在同一个元素标记中只能出现一次
7. 4.属性值不能包括& 字符
8. -->
9. <students>
10. <!-- 举例:
11.     id='01' 也是正确写法
12.     如果属性值有" 则使用' 包括属性 比如 id="xxx'yyy" 如果属性值有' 则使用" 包括属性 比如 id='xxx"yyy' 属性名在同一个元素标记只能出现一次 <stduent id="01" id="03"> 错误
13.     的
14.     属性值不能包括& 字符 比如: <stduent id="0&1"> 是错误的
15.     -->
16. <student id="100">
17. <name>1</name>
18. <age>15</age>
19. <gender>男</gender>
20. </student>
21. <student id="200">
22. <name>2</name>
23. <age>15</age>
24. <gender>女</gender>
25. </student>
26. </students>

注释

  1. <!--这是一个注释- ->
  2. 注释内容中不要出现- -;
  3. 不要把注释放在标记中间;错误写法 <Name <!--the name-->>TOM</Name>
  4. 注释不能嵌套;
  5. 可以在除标记以外的任何地方放注释

CDATA 节!

说明: 有些内容不想让解析引擎执行,而是当作原始内容处理(即当做普通文本),可

以使用 CDATA 包括起来,CDATA 节中的所有字符都会被当作简单文本,而不是 XML 标记。

1. 语法:

<![CDATA[

这里可以把你输入的字符原样显示,不会解析 xml

]]>

2. 可以输入任意字符(除]]>外)

3. 不能嵌

1. <?xml version="1.0" encoding="utf-8"?>
2. <!-- 解读
3. <![CDATA[
4. 这里可以把你输入的字符原样显示,不会解析 xml
5. ]]>
6. -->
7. <students>
8. <stduent id="01">
9. <name>tom</name>
10. <gender>男</gender>
11. <age>18</age>
12. <!-- 举例说明:
13.         下面是一段 js 的代码片段. 直接放在<code></code>标签间,语法错误
14.         使用 CDATA 节来处理即可. <script data-compress=strip>
15.         function h(obj){
16.         obj.style.behavior='url(#default#homepage)';
17.         var a = obj.setHomePage('//www.baidu.com/');
18.         }
19.         </script>
20.         -->
21. </stduent>
22. <stduent id="02">
23. <name>scott</name>
24. <gender>女</gender>
25. <age>17</age>
26. <code>
27. <!--如果希望把某些字符串,当做普通文本,使用 CDATA 包括 -->
28.             <![CDATA[
29.                         <script data-compress=strip>
30.                         function h(obj){
31.                         obj.style.behavior='url(#default#homepage)';
32.                         var a = obj.setHomePage('//www.baidu.com/');
33. 
34.                         }
35.                         </script>
36.                     ]]>
37. </code>
38. </stduent>
39. </students>

转义字符

1. 对于一些单个字符,若想显示其原始样式,也可以使用转义的形式予以处理

转义符 符号
< &lt;
> &gt;
& &amp;
" &quot;
&apos

小结

遵循如下规则的 XML 文档称为格式正规的 XML 文档:

  1. XML 声明语句 <?xml version="1.0" encoding="utf-8"?>
  2. 必须有且仅有一个根元素
  3. 标记大小,区分大小写的.
  4. 属性值用引号
  5. 标记成对
  6. 空标记关闭
  7. 元素正确嵌套


目录
相关文章
|
6月前
|
XML JSON 自然语言处理
SAP UI5 XML 视图中数据绑定路径语法的难点和易混淆点的专题讲解
SAP UI5 XML 视图中数据绑定路径语法的难点和易混淆点的专题讲解
25 0
|
5月前
|
Java 定位技术 Maven
Maven Settings.xml 的语法详解
Maven Settings.xml 的语法详解
75 0
|
XML JSON 数据格式
SAP UI5 XML 视图中数据绑定路径语法的难点和易混淆点的专题讲解
SAP UI5 XML 视图中数据绑定路径语法的难点和易混淆点的专题讲解
|
XML JavaScript Java
Java Web之JSP操作XML(XML的文档结构 语法和注释、dom4j的下载与配置 应用dom4j创建、解析和修改XML)
Java Web之JSP操作XML(XML的文档结构 语法和注释、dom4j的下载与配置 应用dom4j创建、解析和修改XML)
187 0
Java Web之JSP操作XML(XML的文档结构 语法和注释、dom4j的下载与配置 应用dom4j创建、解析和修改XML)
|
XML Java 数据库连接
xml语法中<![CDATA[ ]]>的用法
<![CDATA[ ]]> 是什么,这是XML语法。特别是在mybatis中的mapper映射里会经常使用到该模块,具体点来说,当编译时xml文件时,在CDATA内部的所有内容都会被解析器忽略,
975 0
|
XML 数据格式
XML教程、语法手册、数据读取方式大全
XML简单易懂教程 本文提供全流程,中文翻译。Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 —— 高分辨率用户请根据需求调整网页缩放比例) 一 XML ——数据格式的写...
980 0
|
Web App开发 存储 XML