加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

XML

发布时间:2020-12-16 05:51:45 所属栏目:百科 来源:网络整理
导读:1.什么是XML? XML 指可扩展标记语言(eXtensible Markup Language) XML 的设计宗旨是传输数据,而非显示数据 XML 标签没有被预定义,您需要自行定义标签 XML 被设计为具有自我描述性 XML 被设计用来结构化、存储以及传输信息 XML 是 W3C 的推荐标准 2.XML

1.什么是XML?

  • XML 指可扩展标记语言(eXtensible Markup Language)
  • XML 的设计宗旨是传输数据,而非显示数据
  • XML 标签没有被预定义,您需要自行定义标签
  • XML 被设计为具有自我描述性
  • XML 被设计用来结构化、存储以及传输信息
  • XML 是 W3C 的推荐标准

2.XML 与 HTML 的主要差异

  • XML 不是 HTML 的替代
  • XML 和 HTML 为不同的目的而设计
  • XML 被设计为传输和存储数据,其焦点是数据的内容
  • HTML 被设计用来显示数据,其焦点是数据的外观
  • HTML 旨在显示信息,而 XML 旨在传输信息

3.XML语法规则

  • XML 文档必须包含根元素,该元素是所有其他元素的父元素。
  • XML 文档中的元素形成了一棵文档树
  • 所有元素均可拥有文本内容和属性,所有元素均可拥有子元素
  • 所有 XML 元素都须有关闭标签
  • XML 标签对大小写敏感
  • XML 必须正确地嵌套
  • XML 的属性值须加引号
  • 在 XML 中,一些字符拥有特殊的意义,应该使用实体引用

4.注释

  • 在 XML 中编写注释的语法与 HTML 的语法很相似:<!-- This is a comment -->
  • 在 XML 中,空格会被保留,HTML 会把多个连续的空格字符裁减(合并)为一个,在 XML 中,文档中的空格不会被删节。
  • XML 以 LF 存储换行,在 Windows 应用程序中,换行通常以一对字符来存储:回车符 (CR) 和换行符 (LF)。这对字符与打字机设置新行的动作有相似之处。在 Unix 应用程序中,新行以 LF 字符存储。而 Macintosh 应用程序使用 CR 来存储新行。

5.什么是 XML 元素?

XML 元素指的是从(且包括)开始标签直到(且包括)结束标签的部分。元素可包含其他元素、文本或者两者的混合物。元素也可以拥有属性。

6.XML 命名规则

  • 名称可以含字母、数字以及其他的字符
  • 名称不能以数字或者标点符号开始
  • 名称不能以字符 “xml”(或者 XML、Xml)开始
  • 名称不能包含空格
  • 可使用任何名称,没有保留的字词。

7.XML属性

  • XML 元素可以在开始标签中包含属性,类似 HTML。属性 (Attribute) 提供关于元素的额外(附加)信息。
  • 属性值必须被引号包围,不过单引号和双引号均可使用。如果属性值本身包含双引号,那么有必要使用单引号包围它,或者可以使用实体引用。
  • 没有什么规矩可以告诉我们什么时候该使用属性,而什么时候该使用子元素。我的经验是在 HTML 中,属性用起来很便利,但是在 XML 中,您应该尽量避免使用属性。如果信息感觉起来很像数据,那么请使用子元素吧。

8.避免 XML 属性?

因使用属性而引起的一些问题:
  • 属性无法包含多重的值(元素可以)
  • 属性无法描述树结构(元素可以)
  • 属性不易扩展(为未来的变化)
  • 属性难以阅读和维护
请尽量使用元素来描述数据,而仅仅使用属性来提供与数据无关的信息。而针对元数据的 XML 属性,元数据(有关数据的数据)应当存储为属性,而数据本身应当存储为元素。

9.XML 验证

拥有正确语法的 XML 被称为“形式良好”的 XML。通过 DTD 验证的 XML 是“合法”的 XML。“形式良好”或“结构良好”的 XML 文档拥有正确的语法。
  • XML 文档必须有根元素
  • XML 文档必须有关闭标签
  • XML 标签对大小写敏感
  • XML 元素必须被正确的嵌套
  • XML 属性必须加引号
合法的 XML 文档是“形式良好”的 XML 文档,同样遵守文档类型定义 (DTD) 的语法规则。
W3C 支持一种基于 XML 的 DTD 代替者,它名为 XML Schema。

10.DTD验证

DTD包含了一套用来描述并限制XML文档结构的语法规则
  • 元素的定义规则;
  • 元素之间的关系规则;
  • 属性的定义规则;
  • 可使用的实体或符号规则。

11.命名空间

  • 什么是命名空间? 使用URL作为XML的命名空间
  • 为什么要使用命名空间? XML的元素名是不固定的,当两个不同的文档使用同样的名称描述两个不同类型的元素的时候,就会发生命名冲突。
  • 命名空间的语法: <hwx : name xmlns:hwx="www.aaa.com/">
  • 元素和属性都可以应用命名空间

12.Schema和DTD的关系

  1. XML Schema 是基于 XML 的 DTD 替代者。
  2. DTD的局限性:
  • DTD不遵守XML语法
  • DTD数据类型有限(与数据库数据类型不一致)
  • DTD不可扩展
  • DTD不支持命名空间


  • Schema特性:
  • Schema基于XML语法
  • Schema可以用能处理XML文档的工具处理
  • Schema大大扩充了数据类型,可以自定义数据类型
  • Schema支持元素的继承
  • Schema支持属性组

13.Schema

什么是Schema?
Schema是用一套预先规定好的XML元素和属性创建的,这些元素和属性定义了XML文档的结构和内容模式。
<schema> 元素是每一个 XML Schema 的根元素。
简易元素指那些只包含文本的元素,它不会包含任何其他的元素或属性。
定义简易元素的语法:<xs:element name="xxx" type="yyy"/>
简易元素可拥有指定的默认值或固定值。当没有其他的值被规定时,默认值就会自动分配给元素。
所有的属性均作为简易类型来声明。
简易元素无法拥有属性。假如某个元素拥有属性,它就会被当作某种复合类型。但是属性本身总是作为简易类型被声明的。
定义属性的语法是:<xs:attribute name="xxx" type="yyy"/>
属性可拥有指定的默认值或固定值。当没有其他的值被规定时,默认值就会自动分配给元素。
在缺省的情况下,属性是可选的。如需规定属性为必选,请使用 "use" 属性:<xs:attribute name="lang" type="xs:string" use="required"/>
未完待续...

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读