XML回顾与总结(一)

一、XML基础

(一)什么是XML

1、XML 和 HTML 为不同的目的而设计,XML 是对 HTML 的补充

  • XML 被设计用来传输和存储数据,其焦点是数据的内容。
  • HTML 被设计用来显示数据,其焦点是数据的外观。

2、这些标签是由 XML 文档的创作者发明的,这是因为 XML 语言没有预定义的标签

(二)XML用途

1、把数据从HTML分离()

2、简化数据共享、简化数据传输、简化平台变更

3、不同的应用程序都能够访问您的数据,使您的数据更有用。

4、用于创建新的互联网语言

(三)语法规则

1、XML 必须包含根元素;

2、XML 声明文件的可选部分,如果存在需要放在文档的第一行;

<?xml version="1.0" encoding="utf-8"?>

3、在 XML 中,省略关闭标签是非法的。所有元素都必须有关闭标签;

4、在 XML 中,所有元素都必须彼此正确地嵌套;

5、大小写敏感;

6、在 XML 中,XML 的属性值必须加引号。

如:

<note date="12/11/2007">
<to>Tove</to>
<from>Jani</from>
</note>

7、实体引用

8、注释

<!-- This is a comment -->

(四)HTML元素

XML 元素指的是从(且包括)开始标签直到(且包括)结束标签的部分。

一个元素可以包含:

  • 其他元素
  • 文本
  • 属性
  • 或混合以上所有...

<bookstore> 和 <book> 都有 元素内容,因为他们包含其他元素。<book> 元素也有属性(category="CHILDREN")。<title>、<author>、<year> 和 <price> 有文本内容,因为他们包含文本。

(五)命名规则

  • 名称可以包含字母、数字以及其他的字符
  • 名称不能以数字或者标点符号开始
  • 名称不能以字母 xml(或者 XML、Xml 等等)开始

(六)XML属性

1、XML属性必须加引号,属性值必须被引号包围,不过单引号和双引号均可使用。

2、如果属性值本身包含双引号,您可以使用单引号,

3、或者您可以使用字符实体:

<gangster name="George &quot;Shotgun&quot; Ziegler">

4、XML元素VS属性

<person sex="female">
<firstname>Anna</firstname>
<lastname>Smith</lastname>
</person>
<person>
<sex>female</sex>
<firstname>Anna</firstname>
<lastname>Smith</lastname>
</person>

在第一个实例中,sex 是一个属性。在第二个实例中,sex 是一个元素。这两个实例都提供相同的信息。

没有什么规矩可以告诉我们什么时候该使用属性,而什么时候该使用元素。我的经验是在 HTML 中,属性用起来很便利,但是在 XML 中,您应该尽量避免使用属性。如果信息感觉起来很像数据,那么请使用元素吧。

5、避免XML属性

因使用属性而引起的一些问题:

  • 属性不能包含多个值(元素可以)
  • 属性不能包含树结构(元素可以)
  • 属性不容易扩展(为未来的变化)

属性难以阅读和维护。请尽量使用元素来描述数据。而仅仅使用属性来提供与数据无关的信息

(七)针对元数据的XML属性

有时候会向元素分配 ID 引用,这些 ID 索引可用于标识 XML 元素,它起作用的方式与 HTML 中 id 属性是一样的。

<messages>
<note id="501">
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
<note id="502">
<to>Jani</to>
<from>Tove</from>
<heading>Re: Reminder</heading>
<body>I will not</body>
</note>
< /messages>

上面的 id 属性仅仅是一个标识符,用于标识不同的便签。它并不是便签数据的组成部分。

在此我们极力向您传递的理念是:元数据(有关数据的数据)应当存储为属性,而数据本身应当存储为元素。

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值