没有合适的资源?快使用搜索试试~ 我知道了~
XML语言及其应用.doc
需积分: 0 3 下载量 100 浏览量
2009-04-26
20:10:01
上传
评论
收藏 370KB DOC 举报
温馨提示
试读
11页
XML语言及其应用.doc XML语言及其应用.doc
资源详情
资源评论
资源推荐
XML 技术报告
XM L 语言及其应用
一、 什么是 XML?
XML 的完整名称是 Extensible Markup Language(可扩展的标记语言),目前正成为描
述 Web 上结构化数据的利器,大有取代 HTML 之势。XML 通过将数据和显示分离,被认
为 是 构 建 下 一 代 Web 应 用 的 通 用 语 言 。 事 实 上 , 和 HTML 一 样 , XML 也 是
SGML(Standard Generalized Markup Language,标准通用标记语言)的子集。那么,与
HTML 相比 XML 具有哪些特点呢?
众所周知,当前最流行的 Web 标记语言是 HTML,这种语言确实是开发 Web 的强有力
工具,但是,它缺乏专业化的特点,大大限制了它的快速发展。举个很简单的例子,目前
需要在 Web 网上为一个医院存储和传送数据,需要对其以容易的方式的阅读,并作相应的
数据处理,那么,对于这样一个专业化的任务,HTML 就不是最好的选择,因为,HTML
仅是规定以何种格式显示 Web 页面中的数据,而不包含那些数据所代表的意义。
而 XML 就更灵活一些,因为在 XML 中,我们可以定义自己的标记元素,这就允许我
们可以按自己的需要裁减一个文档,存储和组织文档中需要进行处理的数据,这远远超出
了 HTML 标记所能为我们做到的。现在,我们可以使用 XML 来进行医院的数据存储和处
理工作,可以创建一个<PATIENT>标记来存储病人信息,该病人信息中可以包含由其它自
定 义 标 记 所 存 储 的 数 据 , 如
<MEDICATION>、<ROOM_NUMBER>、<ADMISSION_DATA>等等。通过这些自己定义
的标记,XML 允许我们按照自己的需要构造一个文档,而不必重新构造数据,以符合已定
义的标记语言(如 HTML)。
再举一个非常简单的例子,如下的 HTML 文档描述了一个个人电影库的内容:
<H1>The Library of J.Grubb Alexander</H1>
<TABLE>
<TR>
<TD>The Phantom of the Opera </TD>
<TD>The Phantom of the Opera </TD>
<TD>The Phantom of the Opera </TD>
<TD>Rope </TD>
</TR>
</TABLE>
上面这个文档提供给我们一些信息,但是这些信息并不非常明了,我们无法了解到这
些数据有何意义,因为其中标记仅仅蕴涵了在浏览器中所标记内容的显示语义,并没有给
出这些内容的有关说明。如果使用 XML 来描述这些内容,其中的内容本身具有特定的语
义描述,非常便于对内容中的数据进行处理。如:
<library>
<owner>J. Grubb Alexander</owner>
<films>
<film sound="no" year="1925">The Phantom of the Opera</film>
<film sound="yes" year="1962">The Phantom of the Opera</film>
<film sound="yes" year="1989">The Phantom of the Opera</film>
1
XML 技术报告
<film sound="yes" year="1948">Rope</film>
</films>
</library>
XML 这种灵活、可扩展的语言特性决定了 XML 比 HTML 更加简化、通用、灵活。
HTML 提供了内容的统一显示方法,但是目前的 Web 应用除了简单地查看内容之外(这正
是当前的浏览器的功能),对内容中数据进行处理的需求正在快速增长。XML 规定了标准、
通用的数据组织格式,因此 Web 中的所有异构应用之间能够进行正确、快速的数据访问,
有效地解决了互通信和互操作问题。
二、 XML 概述 —— 从 HTML 到 XML
通过对 XML 和 HTML 之间不同点的研究,我们可以迅速地了解 XML。
(1) 同 HTML 一样,XML 也是由元素(Element)组成的,任何元素的两端都是一对标记
(Tag),因此,一对标记以及其中的内容 (Content)形成了一个元素。当然,元素中的
内容可以嵌套任意数量的其它元素,这样就构成了 XML 的树型结构。在 HTML 中,
元素经常被认为是标记,但在 XML 中,两者需严格区分开。
(2) 在 XML 中,用户可以创建自己的标记,这是 XML 最具有吸引力的特征,因此,用户
可以在 XML 文档中以自己的方式组织数据。XML 可以使用一个 DTD(Document Type
Delaration,文档类型声明)来描述某类 XML 文档的标记结构。
(3) HTML 允许文档的松散结构,例如结束标记</P>可以是任意的,但 XML 并不允许这种
行为,任何开始标记都必须有一个结束标记相对应,即使是没有内容的标记也是如此 。
对于没有内容的标记,XML 允许将开始标记和结束标记合二为一,如
<film name=”The Phantom of the Opera”/>
(4) XML 文档中的元素不能重叠,如
<actor>Lon <index-name>Chaney</actor></index-name>
是不正确的 XML 语法,而必须写成
<actor>Lon <index-name>Chaney</index-name></actor>
(5) 所有标记的属性值必须以“””或“’”括起来,如
<photograph url=”summer99.gif” width=”300px”/>
(6) 因为 XML 元素中的内容被视为数据,内容中的空白字符并不忽略。因此,
<film>The Phantom of
the Opera</film>
并不等价于
<film>The Phantom of the Opera</film>
当然,如果将两者显示出来,它们的显示结果可能会是相同的。
(7) XML 是大小写敏感的,如
<director>Alfred Hitchcock</director>
并不等价于
<DIRECTOR>Alfred Hitchcock</DIRECTOR>
(8) XML 的目的也是用于描述一个文档的内容,和 HTML 不同,XML 并不描述内容的显
示语义,即 XML 并不指定文档中的内容如何显示,它仅描述这些内容是什么。使用
XML,Web 开发者能够在内容本身的语义上标记文档中的内容。例如,在 HTML 中,
<P>The Phantom of the Opera</P>
2
XML 技术报告
描述了段落标记中包含的内容。如果我们仅需要在一个文档中显示出“ The Phantom of
the Opera”,那么如上的描述能够很好地为我们实现。但是,如果我们要从文档中以数
据的形式访问这段内容,一切就变得不那么方便。使用 XML,我们可以以如下的方式
将”The Phantom of the Opera”标记出来,能够更好地反映内容的意义,便于用户的访问
和处理。
<film>The Phantom of the Opera</film>
注:尽管 XML 不描述文档中数据的显示语义,我们可以使用样式单语言( Extensible
Stylesheet Language)来显示 XML 数据。
三、 XML 语言简介
3.1 有效的和格式良好的 XML 文档
如果一个文档类型声明(简称 DTD)与一个 XML 文档相关联,且该文档符合 DTD 声
明,那么认为该 XML 文档是有效的(valid)。
一个文档包含一个或多个元素,如果认为它是格式良好的(well-formed),则必须满
足:(1)开始标记和结束标记互相对应,标记一个元素。(2)两个元素之间不能重叠。
大多数 XML 分析器(Parser)仅要求 XML 文档是格式良好的,但并不要求它是有效
的(很多 XML 分析器并不要求一个 DTD;但是如果有的话,分析器会用它检查 XML 文
档)。正式规范推荐:XML 应该同时兼有这两个特点。
3.2 XML 标记
XML 标记是 XML 文档的正式结构;它指定如何存储和构造文档中的数据。把非标记
的所有文本看作文档中的字符数据。形式上,XML 由下面这些项目组成:
注释
实体引用
字符引用
处理指令
CDATA 节
开始标记和结束标记
空元素
序言和文档类型声明
3.2.1 注释
在“WD-xml-lang-970603”中,如下定义注释:
Comment ::= ‘<! –’ (Char* - (Char* ‘-‘ Char*)) ‘->’
利用注释,就会使一个 XML 文档的结构或内容更清晰。XML 分析器将忽略注释的内
容,通常只作为一个元素传给我们。
3.2.2 实体引用
一个实体是代表某些数据的一个术语,XML 分析器遇到一个实体引用时,会用所代表的
数据取代实体引用。实体引用的格式如下(注意,实体名以 & 开始,以 ; 结束):
EntityRef ::= ‘&’ Name ‘;’
3
剩余10页未读,继续阅读
ylhryzy
- 粉丝: 2
- 资源: 95
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0