XML简介
XML 指可扩展标记语言(EXtensible Markup Language) 。XML 是一种标记语言,很类似 HTML 。XML 的设计宗旨是传输数据,而非显示数据 。XML 标签没有被预定义。您需要自行定义标签。XML 被设计为具有自我描述性。 XML 是 W3C 的推荐标准 。
XML与HTML的主要差异
XML 不是 HTML 的替代。XML 和 HTML 为不同的目的而设计:
XML 被设计为传输和存储数据,其焦点是数据的内容。HTML 被设计用来显示数据,其焦点是数据的外观。HTML 旨在显示信息,而 XML 旨在传输信息。
XML是不作为的。XML不会做任何事情。XML被设计用来结构化、存储以及传输信息。
XML仅仅是纯文本。凡是可以处理纯文本的软件都可以处理XML。
XML不是对HTML的替代,而是对HTML的补充。在大多数web应用程序中,XML用于传输数据,而HTML用于格式化并显示数据。对XML最好的描述是:XML是独立于软件和硬件的信息传输工具。
XML常见应用
XML技术除用于保存有关系的数据之外,它还经常用作软件配置文件,以描述程序模块之间的关系。
在一个软件系统中,为提高系统的灵活性,它所启动的模块通常由其配置文件决定
XML语法规则
所有XML元素都必须有关闭标签。XML标签对大小写敏感。比如,在XML中,标签<Letter>与标签<letter>是不同的。XML中,所有元素都必须彼此正确嵌套。如:<b><i>Hello World</i></b>而不可以<b><i>Hello World</d></i>.
XML的属性值必须加引号。如<note date=”08/08/2002”></note>
实体引用。
在XML中,一些字符拥有特殊的意义,如”<”、”&”将其放入XML元素中,会发生错误,这是因为解析器会把它当作新元素的开始,产生XML错误。
在XML中,空格会被保留。即文档中的空格不会被删节。
XML元素
XML 元素指的是从(且包括)开始标签直到(且包括)结束标签的部分。元素可包含其他元素、文本或者两者的混合物。元素也可以拥有属性。如:
<bookstore>
<book category="CHILDREN">
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
<book category="WEB">
<title>Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
</bookstore>
上例中,<bookstore> 和 <book> 都拥有元素内容,因为它们包含了其他元素。<author> 只有文本内容,因为它仅包含文本。
XML命名规则。名称可以含字母、数字以及其他的字符。名称不能以数字或者标点符号开始。名称不能以字符 “xml”(或者 XML、Xml)开始。名称不能包含空格。可使用任何名称,没有保留的字词。
XML元素时刻扩展的,易携带更多信息。
XML属性
XML属性必须加引号。双引号和单引号均可。
XML验证
拥有正确的XML被称为“形式良好”的XML。通过DTD验证的XML是“合法”的XML。
“形式良好”或“结构良好”的 XML 文档拥有正确的语法。
“形式良好”(Well Formed)的 XML 文档会遵守前几章介绍过的 XML 语法规则:
XML 文档必须有根元素。XML 文档必须有关闭标签。XML 标签对大小写敏感。XML 元素必须被正确的嵌套。XML 属性必须加引号。
合法的 XML 文档是“形式良好”的 XML 文档,同样遵守文档类型定义 (DTD) 的语法规则。