什么是 XML?
XML 指可扩展标记语言(EXtensible Markup Language)
- XML 是一种标记语言,很类似 HTML
XML 的设计宗旨是传输数据,而非显示数据
XML 标签没有被预定义。您需要自行定义标签。
XML 被设计为具有自我描述性。
XML 是 W3C 的推荐标准@H_404_12@
XML 与 HTML 的简单比较
- XML 不是 HTML 的替代。
XML 和 HTML 为不同的目的而设计:
XML 被设计为传输和存储数据,其焦点是数据的内容。
HTML 被设计用来显示数据,其焦点是数据的外观。
HTML 旨在显示信息,而 XML 旨在传输信息。@H_404_12@
XML 是不作为的
XML 不会做任何事情。XML 被设计用来结构化、存储以及传输信息。
XML 仅仅是纯文本XML 没什么特别的。它仅仅是纯文本而已。有能力处理纯文本的软件都可以处理 XML。
XML 不是对 HTML 的替代
XML 是对 HTML 的补充。
XML 不会替代 HTML,理解这一点很重要。在大多数 web 应用程序中,XML 用于传输数据,而 HTML 用于格式化并显示数据。
对 XML 最好的描述是:
XML 是独立于软件和硬件的信息传输工具。
XML 无所不在
当我们看到 XML 标准突飞猛进的开发进度,以及大批的软件开发商采用这个标准的日新月异的速度时,真的是不禁感叹这真是令人叹为观止。
目前,XML 在 Web 中起到的作用不会亚于一直作为 Web 基石的 HTML。
XML 无所不在。XML 是各种应用程序之间进行数据传输的最常用的工具,并且在信息存储和描述领域变得越来越流行。
XML中的特殊字符
所有 XML 文档中的文本均会被解析器解析。
在处理XML数据时,特殊字符要特殊处理,不能和节点字符混淆。
在 XML 中,一些字符拥有特殊的意义。
如果你把字符 “<” 放在 XML 元素中,会发生错误,这是因为解析器会把它当作新元素的开始。
这样会产生 XML 错误:
<message>if salary < 1000 then</message>
为了避免这个错误,请用实体引用来代替 “<” if salary < 1000 thenML 中,有 5 个预定义的实体引用:
编码 | 对应字符 | 说明 |
---|---|---|
< ; | < | 小于 |
> ; | > | 大于 |
& ; | & | 和号 |
&apos ; | ’ | 单引号 |
" ; | “ | 引号 |
注释:在 XML 中,只有字符 ”<“ 和 ”&” 确实是非法的。大于号是合法的,但是用实体引用来代替它是一个好习惯。
CDATA区段
术语 CDATA 指的是不应由 XML 解析器进行解析的文本数据(Unparsed Character Data)。
在 XML 元素中,“<” 和 “&” 是非法的。
“<” 会产生错误,因为解析器会把该字符解释为新元素的开始。
“&” 也会产生错误,因为解析器会把该字符解释为字符实体的开始。
某些文本,比如 JavaScript 代码,包含大量 “<” 或 “&” 字符。为了避免错误,可以将脚本代码定义为 CDATA。
CDATA 部分中的所有内容都会被解析器忽略。
CDATA 部分由 “
<![CDATA[ function matchwo(a,b) { if (a < b && a < 0) then { return 1; } else { return 0; } } ]]>
在上面的例子中,解析器会忽略 CDATA 部分中的所有内容.