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 文件中出现的标签,一个标签分为开始标签和结束标签,一个标签有如
下几种书写形式,例如:
- 包含标签体:<a>www.sohu.cn</a>
- 不含标签体的:<a></a>, 简写为:<a/>
- 一个标签中也可以嵌套若干子标签。但所有标签必须合理的嵌套,绝对不允许交叉嵌套 ,
例如:<a>welcome to <b>www.sohu.org</a></b>
提示:在很多时候,说 标签、元素、节点是相同的
4. XML 元素命名规则
- 区分大小写,例如,<P>和<p>是两个不同的标记。
- 不能以数字开头。
- 不能包含空格。
- 名称中间不能包含冒号(:)。
- 如果标签单词需要间隔,建议使用下划线 比如 <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>
注释
- <!--这是一个注释- ->
- 注释内容中不要出现- -;
- 不要把注释放在标记中间;错误写法 <Name <!--the name-->>TOM</Name>
- 注释不能嵌套;
- 可以在除标记以外的任何地方放注释
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. 对于一些单个字符,若想显示其原始样式,也可以使用转义的形式予以处理
转义符 | 符号 |
< | < |
> | > |
& | & |
" | " |
‘ | &apos |
小结
遵循如下规则的 XML 文档称为格式正规的 XML 文档:
- XML 声明语句 <?xml version="1.0" encoding="utf-8"?>
- 必须有且仅有一个根元素
- 标记大小,区分大小写的.
- 属性值用引号
- 标记成对
- 空标记关闭
- 元素正确嵌套