XML
reference:菜鸟教程 XML
XML是什么?
-
XML 指可扩展标记语言(eXtensible Markup Language)。
-
XML 被设计用来传输和存储数据,不用于表现和展示数据,HTML 则用来表现数据。
特点
- XML 被设计用来传输和存储数据,其焦点是数据的内容。
- XML 不会做任何事情XML 被设计用来结构化、存储以及传输信息。
- XML 不是对 HTML 的替代XML 是独立于软件和硬件的信息传输工具。
- XML 是 W3C 的推荐标准。
- XML 无所不在。
用途
-
XML 把数据从 HTML 分离
HTML的动态数据显示就是通过Javascript读取XML文件所来更新的。
-
XML 简化数据共享
-
XML 简化数据传输
-
XML 简化平台变更
XML 数据以纯文本格式进行存储,因提供了一种独立于软件和硬件的数据存储方法。
注:此平台可以指操作系统、浏览器或者应用程序。
树结构
数据结构里面的树结构,很好理解,或者思维导图,也是一个意思
元素 是指从开始标签直到结束标签的部分。
- 根元素
- 元素 —属性(可自行添加)
- 元素 —属性
- 。。。
- 。。。
- 元素 —属性(可自行添加)
语法
-
XML文档必须有根元素
-
XML声明可写可不写,若写则必须在第一行
<?xml version="1.0" encoding="utf-8"?>
-
所有XML元素都必须有一个关闭标签
<p>This is a paragraph.</p> <br />
-
XML标签对大小写敏感
-
XML必须正确嵌套,即保证树结构的严谨
-
XML属性值必须加引号
单引号、双引号都可以
字符中含双引号可加实体引用或者单引号
避免属性,属性难以阅读和维护。请尽量使用元素来描述数据。而仅仅使用属性来提供与数据无关的信息。
-
实体引用
解析器识别错误边界,字符转义问题
- 使用实体引用代替字符
错误 <message>if salary < 1000 then</message> 正确 <message>if salary < 1000 then</message>
-
XML注释为
-
元数据(有关数据的数据,例如ID)应当存储为属性,而数据本身应当存储为元素。
解析器
-
所有现代浏览器都有内件的XML解析器
-
XML解析器把XML文档转换成XML DOM对象(JavaScript可操作的对象)
DOM Docunment Object Model 定义了访问和操作文档的标准方法
CDTAT
-
XML文档中的所有文本均会被解析器解析,只有CDATA区段中的文本会被解析器忽略
-
CDTAT是不应该由XML解析器解析的文本数据
CDATA 部分由 “<![CDATA[**" 开始,由 "**]]>” 结束:
<script> <![CDATA[ function matchwo(a,b) { if (a < b && a < 0) then { return 1; } else { return 0; } } ]]> </script>