XML 技术
作者:问天 发表时间:2007-2-20 12:00 阅读:233次 在百度搜索相关内容

20.2.1
XML
简介

XML
是扩展标识语言(Extensible Markup Language) 的英文缩写。
XML
语言是下一代大型Web 主导技术,它是一种基于SGML 的、简单灵活的语言,提供了比HTML 更为广泛的方法来描述文档内容,同时通过一种能够在所有计算机上运行、与平台和操作系统无关的方法,提供了描述元数据的机制。
XML
不仅是一种技术,而是指一个技术组。
XML
家族至少包括以下成员:

可扩展样式语言(eXtensible Style Language, XSL)

XML
链接语言(
XML
Linking Language, 包括XPath, XLink 和XPointer)

XML
名称空间(
XML
Namespace)

XML
模式(Schema) 1 可扩展样式语言(eXtensible Style Language XSL)
在创建Web 应用程序时,我们不仅关注应用程序的功能、安全性等问题,而且还迫切地希望Web 页面更漂亮,同时也要保证各种浏览器能够识别统一的数据显示格式。因此我们常常利用层叠样式表(Cascading Style Sheets, CSS) 来编排同一HTML 内容和格式。XSL 与
XML
协同工作的方式和CSS 与HTML 协作的方式相类似。XSL 是实现
XML
样式的语言,由它来定义一组规则以决定如何显示
XML
文档的内容,以及显示哪些内容,从而将
XML
语义转换为显示格式,正如人们在 Web 浏览器中所见到的显示式样一样。
[color=#FFFFFF'][/color]


在显示
XML
文档内容时,XSL 处理器首先要查看
XML
文档,并把该文档称为源文档,然后根据显示句法在源文档的基础上导出第三个实例。在下面的例子中 XSL 处理器根据student.xsl 的显示要求只显示源文档student.xml 中匹配元素 learning。









2
XML
链接语言(
XML
Linking Language ,包括XPath XLink 和 XPointer)

XML
链接主要包括三部分:
XML
Path 语言(XPath),
XML
Linking 语言(XLink),
XML
Pointer 语言(XPointer)。

XPath
其主要目的是进行部分(而不是全部)
XML
文档寻址,用于
XML
层次结构(树型结构)的搜索。
XLink
其主要是定义两个或多个数据对象或对象部分之间的关系,它要利用
XML
文档的句法来创建结构,从而描述目前的HTML 的单向超链接以及更为复杂的多端或多类型链接。
XPointer
其建立于XPath 基础之上,以支持
XML
内部结构中的寻址。所以可以使用
XML
标记链接到另一个文档的特殊部分。 3
XML
名称空间(
XML
Namespace)

XML
名称空间是一组名字,由URI 索引确定,在
XML
文档中用作元素类型和属性名。名称空间为使用不同名字的
XML
文档的内部结构块提供相互交流的环境。

4
XML
模式(Schema)
XML
模式主要用来控制
XML
文档内的结构和内容的相互关系。

20.2.2
XML
的优点

XML
能够实现Web 上和企业内的许多应用,应该指出的是任何标准的交换语言都可以轻易地交换数据。这些应用主要表现在以下诸多方面:

事件驱动的数据库交互
应用程序间的通信
定制出版
与媒体无关的全球出版
使用元素名和元数据的精确数据搜索和检索
组件/媒体管理
后处理
电子文档交换 20.2.3
XML
支持Web 发布的体系结构

XML
作为一种基于SGML 的、简单灵活的语言其设计目标与SGML 发明者的最初动机是一致的,即文档描述与应用功能分开的原则。在这里文档是指能够根据需要结合或倾倒各种数据块的容器,它可以存储相当长的一段时间,也可以只在与人打交道的那段时间里存在。
XML
文档也包含了多种数据类型,比如传统发布程序识别的文本、图像、视频剪辑等,同时也可以包含从各种不同的数据库中检索出来的数值数据。文档只是暂时存在的,它可以只持续一个事务那么长,而且只能由软件程序浏览。
在传统的发布模型中,应用程序从客户机上转换数据开始,但是在由
XML
支持的多层体系结构(如图20-1) 中应用程序则是从查询开始。客户机首先开始查询,从而使查询指向中间层的应用服务器,然后再与数据中心或资料档案库后台进行通信。



中间应用层主要是决定如何与后台数据服务器通信并获取与客户查询相匹配的信息,同时将多个
XML
文档或来自多个
XML
文档的代码段合并成一个大的文档,并作为客户的查询结果显示到客户机上。

XML
支持以两种不同的格式从资料库中获取数据。
XML
数据可能来自一个对象或者来自一个关系数据库。一般来说,关系数据都具有一定的由关系数据库定义的特定格式,应用服务器可以有一个内置的转换引擎用来转换这些特定格式的关系数据,或者调用一个外部转换引擎。现在大多数关系数据库厂商正在添加一个
XML
层,这个
XML
层提供数据转换功能,比如
XML
Translation (
XML
转换器下)。一节我们将对如何实现
XML
文档与关系数据之间的数据交互进行介绍。

#Advertisement