admin 管理员组文章数量: 1086019
2024年4月20日发(作者:结束任务按哪几个键)
维普资讯
2006年12月
包头钢铁学院学报
December,2006
第25卷第4期
Joumal of Baotou University of Iron and Steel Technology
Vol25。No4
文章编号:1004—9762(2006)04—0343—04
基于MSXML接口的Active XML解析器的构建
靳荣,高永兵,史海军,赵军富
(内蒙古科技大学信息工程学院,内蒙古包头014010)
关键词:AXML;Web服务;MSXML;解析器
中图分类号:1P393 文献标识码:A
摘要:Active XML定义为一种分布式数据管理语言,主要思想是在XML中嵌入Web cS ̄ices调用实现访问一些不
断更新的数据.目前的大多XML Parser能够解析静态的XML文档结构,对动态XML(Acitve XML)没作考虑.设计
了一个基于MSXML接口的插件对Active XML文档进行处理,使其转化为普通的XML文档,使一些时空相关的动态
数据以通用XML文档格式交换与存储,从而为AXML的推广使用奠定基础.
Construction of Parser in Active XML based on MSXML
(Inforlnation Engineering School,Inner Mongolia Univesrity of Science nad Technology,Baotou 010410,China)
Key words:AXML;web services:MSXML;parser
Abstract:Active XML is defined as a distributed lnaguage for the management of data,and its main idea is to embed call code for Web Services
in the XML to access some up-to-date data.Most of hte present XML Parsers can parse normal XML documents,but not for Active XML.Here-
in,ActiveX control based-MSXML documents were designed to process Active XML documents,whose primary function is to translate Active
XML into normal XML documents to make them exchanged or stored as some spatio-temporal related dynamic data.Consequently,this will es-
tablish a groundwork to popularize nad utiliez Active XML(AXML).
Web Services…(DCOM,CORBA的后继)是由组
管理和信息集成提供了有效的机制.
件技术发展起来的新标准,也是当前研究的热点.
在Web服务架构的各模块间以及模块内部,消
Web Services先由微软提出,随后得到了W3C(世界
息以XML格式传递,易于阅读和理解,并且XML文
互联网联盟)的认可.Web Services意图是允许一些
档具有跨平台性和松散耦合的结构特点.实际上,
活动对象为潜在的请求提供分布式计算服务.它的
XML不仅作为一种交换的通用格式,同时也是信息
接口和封装可以被XML定义描述和发现,并且可以 的一种存储格式.现在国内外已经有一些Native
和任何使用XML消息的其他应用进行直接交换. XML的存储管理系统开发成功,在学术界较为流行
Web Services是建立在XML,soaP(简单对象访问协
的有斯坦福大学的LOREL2 J,中国人民大学的Orien.
议),WSDL(Web服务描述语言),UDDI(统一描述、
t)【L3 J等;而且一些商业系统也纷纷扩展原来的关系
发现和集成)基础之上的分布式应用架构.作为一 数据库管理系统,增加对XML的数据类型的支持,
种新兴的Web应用模式,Web Services为分布式数据
如SQL Server2005[ 等.
-收稿日期:2oo6—09—15
基金项目:内蒙古自然科学基金资助项目(200607010810)
作者简介:靳荣(1960一),男。内蒙古察右中旗人。内蒙古科技大学副教授。主要从事工作流技术及数据集成研究
维普资讯
344 包头钢铁学院学报 2006年12月 第25卷第4期
Active XML简称AXML[5],其定义为一种分布式
数据管理语言框架,是对XML的扩展,由法国自动
化所Serge Abiteboul等人2002年提出,其主要思想
是在XML文档中嵌入Web Services调用,实现对II1.
temet上的Web Services资源的动态访问.但它仍是
合法的有效的XML文档,能够比原XML表达更加
丰富准确实时的内容.通过触发嵌入的Web Ser.
vices调用,相关Web Services被激活(采用SOAP协
Parser for Java和SUN公司的ProjectX等.
根据对XML文档的不同处理方式,将应用程序
接口分为2种:(1)基于简单应用程序编程接口
(Simple APIfor XML,SAX)的方式;(2)基于文档对象
模型(Document Object Model,DOM)的应用程序接口
的方式.SAX提供了一种对文档进行顺序访问的模
式,是一种可以快速读写XML数据的方式.当使用
SAX分析器对XML文档进行分析时,会触发一系列
议),并返回结果,这样文档就可以动态地从数据源
(Web Services)获取最新数据.一个AXML文档包含
两种信息,在文档中直接表示出来的数据称为“显式
数据(extensional data)”,以Web Services调用表示的
数据称为“隐式数据(intensional data)”,在需要时可
以将这种调用“具体化”(Materialization).
一
个简单的AXML文档如下:
(?xml version=”1.0”encoding=”ISO.8859.1”)
(newspaper)
(title)china daily(/title)
(date)2004.1 1.16(/date)
(weather)
(call service=”http://202.207.86.188/
weather”)
(city)Peking(/city)
(/cal1)
(/weather)
(/newspaper)
(cal1)表示Web Services调用,属性Service是一
个URL,指出了要调用的Web Services的位置,子元
素(city)是调用的输人参数.这样的AXML文档经
解析(调用“具体化”)后生成静态的XML文档,其中
用当前的温度数据替掉了相应的Web Services调用
1 AXML解析
AXML是有效的XML,所以AXML结构的解析
类似于XML的解析,只是在处理到涉及Web Ser.
vices调用时需要特殊处理,这就需要用到XML解析
应用程序接口.XML解析器都提供这样的应用程序
接口.
一
个XML解析器就是一段可以读人XML文档
并分析其结构的代码.目前,广泛使用的商业解析
器主要有:Ahova公司的XMLSpy,IBM公司的
XMIAJ,Microsoft公司的MSXML,Oracle公司的XML
事件,并激活相应的XML事件处理函数,从而完成
对文档的访问,所以SAX接口也被称作事件驱动接
口.而DOM是由W3C制定的标准接口规范,将
XML文档转换为树型结构的文档对象模型,用户通
过对该对象模型的访问,可以动态地创建文档,遍历
文档结构,对XML文档中的数据进行修改、移动、删
除和插入等操作.
XML解析系统并不支持对AXML文档的处理.
Serge Abiteboul等人设计了一种单独的AXML解析
器对AXML文档进行处理,在这种方案里,对普通标
签和包含Web Services调用的标签做完全不同的对
待,和原来XML的解析器无关,所有的平台重新安
装AXML的解析器.
我们提出另一种AXML文档处理的方案——基
于XML解析器的AXML组件技术处理方案,在这种
方案里,只要平台安装有普通XML解析器即可,如
其装有支持AXML的组件,则下载AXML到本地处
理,否则在发送端处理完成后再以普通XML的形式
传送过来.AXML目前还没有得到W3C的认可而成
为一种标准,在这种情况下,开发基于如MSXML之
类的解析器是一种合理的方案.这也是我们所作工
作的依据.
MSXML解析器的安装非常方便,尤其在客户
端,当安装IE5以上版本时,将自动带人MSXML解
析器,生成动态链接库文件MSXML.DLL.MSXML解
析器对以上两种接口有较好的支持,并提供相关类
库.根据需要,我们选用MSXML中的DOM作为我
们的解析接口.
2 AXML系统结构
AXML系统结构如图1所示,结构图由3部分
组成,分别为AXML的Sender,Receiver以及提供
web Services的Server.Sender存储有AXML文档,当
接到Receiver的请求时,会根据Receiver的性能做出
选择,如请求点支持AXML,则将AXML传到Receiv.
维普资讯
靳荣等:基于MSXML接口的Active XML解析器的构建 345
er,否则由sender来完成AXML文档的“具体化”,也
就是将AXML文档中的对Web Services的动态调用
3.1 ActiveX控件
ActiveX是Microsoft提出的采用COM(Component
转化为具体的XML数据放到对应的节点上,从而变
成普通的XML文档传到Receiver,使用传统XML的
方式来处理.如果Receiver支持AXML,那么在Re.
ceiver上做“具体化”的过程.需要强调的是,图1中
所示Sender,Receiver以及Server可以驻留在3个点
上,也可以是任意2个点甚至1个点上,例如Receiv.
Object Model,组件对象模型)使软件部件在网络环境
中进行交互的一组技术集,具有语言无关性的特
点.ActiveX控件能通过设置属性控制其行为,从而
实现用户接口,作为一种针对Intemet应用的开发技
术,ActiveX控件可以嵌入HTML文本中,形成某种
功能模块,被广泛应用于Web应用的各个方面.
er和Sender为同一台主机,类似装有Web服务的主
机可从本机浏览器请求浏览网页.
Sender
l 一I
艇
Server
瓿娥 《 I
二 f
Se
w
rv
e
ic
b
e
s J
l
Receiver : :强黜
lAⅪ皿lctiv'e} 一
L 二.— ,
图1 AXML系统结构
Fig.1 AXML System Structure
在Sender与Receiver之问的调用为普通http请
求,相当于普通客户与服务端的http交互,传递XML
或AXML文件.而由于Web Services接受的调用消
息协议为soap,所以在Sender与Server之间以及Re.
ceiver与Server之问的调用为Soap.Soap调用可以为
各种基于TCP的应用协议,如http,ftp以及MIME
等,但是一般都基于http.我们的设计目标也是Soap
Over Http.
在Web Services体系结构中,Soap调用消息遵循
XML格式规范,在其请求/返回时将AXML文档中
的<cal1)标签数据用Soap打包/解包(wrapping/
dewrapping),以实现将动态的AXML数据转化为静
态的XML.我们将相关处理集成到一个解析器中,
后文将给予详细介绍.
3 AXML解析器
主要介绍图1中使用Soap调用Web Services的
一
些处理.我们开发了一个AetiveX控件来处理有
关AXML文档的解析.
3.2控件功能
本控件的主要功能是将AXML文档转化为普通
的XML文档.在这里我们将AXML文档的文件扩
展名规定为AXML,以识别是否包含Web Services
call,控件的输人参数是一个含有(cal1)标签(Web
Services cal1)的AXML的文件,输出的是将<call>标签
换成Web Services的返回结果的XML的文件.
3.3 实现算法
输入:包含有Web Services调用的AXML.
输出:将Web Services调用“具体化”的XML文
件.
Begin
(1)创建“Microsotf.XMLDOM”对象
(2)将输人参数文件AXML装入该对象建立关
联
(3)while文件没有到尾d0
(4)使用DOM对象GetElementByTagName函数
找到<call>节点
(5)解析该节点内容
(6)按Soap消息格式打包(完成Web Services调
用)
(7)取出调用结果检查
(8)if调用结果正确返回将其调入DOM树
(9)else完成调用结果错误处理
(10)end if
(11)loop
(12)返回XML文件
End
4 结束语
AXML的想法非常先进,有着广阔的应用前景.
这是我们从事AXML进一步研究的主要动机,未来
的目标主要集中在开辟AXML在不同研究领域的新
应用,而AXML的跨平台也是研究的重点问题.这
是设计这个平台语言无关插件的贡献所在.
维普资讯
346 包头钢铁学院学报 2006年12月 第2^5卷第4期
随着对AXML研究与应用的深入,组件也需要
sql2k5xm1.asp.
有更多的功能与考虑,如调用时Web Services的数据
[53靳荣,史海军,高永兵,等.AXML在基于Web eSrvices
条件与权限安全等问题;以及开发更多的基于
的工作流过程建模中的应用[J].微计算机信息,2006,
AXML的应用,这是我们下一步的工作.
2(3):253—525.
L6J Abiteboul S,Be6e ̄oun 0,Manolescu I,et a1.Active XML:
参考文献:
Peer-to-Peer Daat and Web Services Integraiton[A].Pro—
ceeding of28th International Conference on Very Large Data
El-]岳 昆,王晓玲.Web服务核心支撑技术:研究综述
Bases[cJ.San Fransi ̄o:Morgan Koufann Publishers Inc.。
rj-1.计算机软件学报,2OO4,15(3):428.442.
20o2.1087—1090.
L2J McHugh J,Abiteboul S,Goldman R,et a1.Lore:A database
L7]Abiteboul S,Bonifati A,Cobella G,et a1.Bynamie XML Doc—
management system for semistructured data[J].SIGMOD
uments with Distribution and Rep ̄cafion[A].Proceeding of
Record,1997,26(3):54—66.
2003 ACM SIGMOD International conference on Management
E33 Meng Xiao-feng,WANG Xiao-feng,XIE min,et a1.Orient x:
of Daat[C-].USA:ACM,2003.527—538.
An integraged, ̄hema based native XML datahase system
L8J Abiteboul S,Baumagarten J,Bonifati A。et a1.Managing Dis—
LJ].Wahan University Journal of Natural Science,2006,1 1
tributed Workspaces iwth Active XML[AJ.Proceeding fo29th
(5):1192—1196.
I-4-1 Pal S,Fussell M,Dolobowsky I.What’s New in FOR XML in
International Conference on Very IJarge Data Bases[c].San
Fransis ̄o:Morgan Koufann Publishers Ine.。2003.1061一
Microsoft SQL Server 2005LEB/OL].http://msdn.nifcrosoft.
】O64.
corn/library/default.asp?url=/F ̄brary/en-us/dnsql90/html/
知识窗
辩证认识热裂纹 降低轧辊损耗(一)
热裂纹是一种最常见的轧辊缺陷,不论是板带轧机还是其它形式的轧机轧辊,均不可能避免出现热
裂纹.对于产生的热裂纹如不及时处理,可能会引起一些更严重的缺陷或事故,如剥落、断辊等,造成轧
辊被迫提前下机甚至报废.如果及时发现并加以处理,不但可以避免一些事故的发生,而且还能发挥其
积极的作用,因为在粗轧机架上适当数量、大小的裂纹可以改善咬人条件、避免打滑。对于轧辊,我们要
制定适宜的使用制度,既要看到裂纹不利的一面,加以避免;又要看到其有利的一面,加以利用.
轧辊热裂纹的产生主要是周期性交变热应力作用的结果,在正常轧制的过程中,轧辊辊身温度通常
为50 90℃,而与轧件接触的轧辊表面瞬时温度随机架不同,可达600—800oC不等.辊面与轧件接触
时,受瞬时高温的影响,表层因温度急剧升高而膨胀,次表层温度因传热限制基本保持不变,表层、次表
层互为拉应力,表层呈现较高的压应力.当轧辊与轧件脱离时,因受冷却水作用,表层温度很快降低,使
表层压应力变为拉应力状态.轧辊每旋转一周,其表层就进行一次拉压应力循环,多次反复的拉压结果
在轧辊表面出现疲劳进而产生热疲劳裂纹.因而轧辊旋转速度较快,在冷却水的作用下,离开轧件的轧
i辊辊面很快恢复到正常使用温度,就是说轧件对轧辊表面的影响区深度较浅,热疲劳裂
纹在初期很细很
i浅,一般在lmm以下・这些裂纹深度虽然较浅,但如不及时维护,在以后的轧制过程中
非常容易扩展成
l较严重的裂纹或其它类型的缺陷,如辊面粗化、流星斑和剥落等.
} 摘录自《中国冶金报》2JlHJ‘I、 _| l口‘H— Jl 006
..
11..o9(8)
;{
k...+—...+—...+一+...+—...+—...+—...+—...+—...+—...+—...+—...+—...+—...+—...+—.+...+—...+—...+—...+—.+...+—...+—...+—.+.+.+...+—...+—...+—...+—...+—...+—...+—...+—...+—...+—...+—...+—.
版权声明:本文标题:基于MSXML接口的Active XML解析器的构建 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1713561373a640829.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论