您的位置:首页 > 其它

7、XML 学习记录——简介

2017-10-10 11:39 411 查看
一、简介

1、什么是XML?

XML 指可扩展标记语言(EXtensible Markup Language)。

XML 是一种很像HTML的标记语言。

XML 的设计宗旨是传输数据,而不是显示数据。

XML 标签没有被预定义。您需要自行定义标签。

XML 被设计为具有自我描述性。

XML 是 W3C 的推荐标准。

2、XML 和 HTML 之间的差异?

XML 不是 HTML 的替代。

XML 和 HTML 为不同的目的而设计:

XML 被设计用来传输和存储数据,其焦点是数据的内容。

HTML 被设计用来显示数据,其焦点是数据的外观。

HTML 旨在显示信息,而 XML 旨在传输信息。

3、XML 不会做任何事情

也许这有点难以理解,但是 XML 不会做任何事情。XML 被设计用来结构化、存储以及传输信息。

下面实例是 Jim给 Storm的便签,存储为 XML:

<note>
<to>Storm</to>
<from>Jim</from>
<heading>Reminder</heading>
<body>Good Luck!</body>
</note>

上面的这条便签具有自我描述性。它包含了发送者和接受者的信息,同时拥有标题以及消息主体。

但是,这个 XML 文档仍然没有做任何事情。它仅仅是包装在 XML 标签中的纯粹的信息。我们需要编写软件或者程序,才能传送、接收和显示出这个文档。

4、通过 XML 您可以发明自己的标签

上面实例中的标签没有在任何 XML 标准中定义过(比如 <to> 和 <from>)。这些标签是由 XML 文档的创作者发明的。

这是因为 XML 语言没有预定义的标签。

HTML 中使用的标签都是预定义的。HTML 文档只能使用在 HTML 标准中定义过的标签(如 <p>、<h1> 等等)。

XML 允许创作者定义自己的标签和自己的文档结构。

二、XML用途

1、XML 把数据从 HTML 分离

如果您需要在 HTML 文档中显示动态数据,那么每当数据改变时将花费大量的时间来编辑 HTML。

通过 XML,数据能够存储在独立的 XML 文件中。这样您就可以专注于使用 HTML/CSS 进行显示和布局,并确保修改底层数据不再需要对 HTML 进行任何的改变。

通过使用几行 JavaScript 代码,您就可以读取一个外部 XML 文件,并更新您的网页的数据内容。

2、XML 简化数据共享

在真实的世界中,计算机系统和数据使用不兼容的格式来存储数据。XML 数据以纯文本格式进行存储,因此提供了一种独立于软件和硬件的数据存储方法。这让创建不同应用程序可以共享的数据变得更加容易。

3、XML 简化数据传输

对开发人员来说,其中一项最费时的挑战一直是在互联网上的不兼容系统之间交换数据。由于可以通过各种不兼容的应用程序来读取数据,以 XML 交换数据降低了这种复杂性。

三、XML树结构

1、XML实例

<?xml version="1.0" encoding="UTF-8"?>
<note> <to>Storm</to> <from>Jim</from> <heading>Reminder</heading> <body>Good Luck!</body> </note>


第一行是 XML 声明。它定义 XML 的版本(1.0)和所使用的编码(UTF-8)。

下一行(<note>)描述文档的根元素(像在说:"本文档是一个便签")
接下来 4 行描述根的 4 个子元素(to, from, heading 以及 body):

最后一行(</note>)定义根元素的结尾

想想一下,这个实例中,XML 文档包含了一张 Jim 写给 Storm 的便签。

我噻,XML 具有出色的描述性。

2、XML 文档是一种树结构

XML 文档必须包含根元素。该元素是所有其他元素的父元素。

XML 文档中的元素形成了一棵文档树。这棵树从根部开始,并扩展到树的最底端。

所有的元素都可以有子元素:

<root>

<child>

<subchild>.....</subchild>

</child>

</root>

父、子以及同胞等术语用于描述元素之间的关系。父元素拥有子元素。相同层级上的子元素成为同胞(兄弟或姐妹)。

所有的元素都可以有文本内容和属性(类似 HTML 中)。

3、XML 实例

<bookstore>
<book category="COOKING">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
<book category="CHILDREN">
<title lang="en">Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
<book category="WEB">
<title lang="en">Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
</bookstore>

上述XML 对应的树形结构如下:



实例中的根元素是 <bookstore>。文档中的所有 <book> 元素都被包含在 <bookstore> 中。

<book> 元素有 4 个子元素:<title>、<author>、<year>、<price>。

注意:第一本book和第三本book并没有显示在图中
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: