(计算机应用技术专业论文)基于emif的消息服务集成平台研究.pdf_第1页
(计算机应用技术专业论文)基于emif的消息服务集成平台研究.pdf_第2页
(计算机应用技术专业论文)基于emif的消息服务集成平台研究.pdf_第3页
(计算机应用技术专业论文)基于emif的消息服务集成平台研究.pdf_第4页
(计算机应用技术专业论文)基于emif的消息服务集成平台研究.pdf_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 基于校园网的学校内部各管理信息系统的数据共享和交换是学校信息化建 设的重要工作。要从根本上解决学校信息系统集成中由于各个子系统的数据格式 不一致,难以集成的问题,关键还是要遵循一定的规范。教育管理互操作框架规 范( e d u c a t i o nm a n a g e m e n ti n f o r m a t i o ns y s t e mi n t e r o p e r a b i l i t yf r a m e w o r k , 简称e m i f ) 是教育部新近推出的一套教育管理信息系统的互操作规范,规范的特 点是在不需要改变现有系统基础上,采用客户端代理和区域集成服务器( z o n e i n t e g r a t i o ns e r v e r ,简称z i s ) 模式构建基于校园网的信息共享和数据集成平 台。本文正是在这种背景下,研究了规范中的核心部件z i s ,该组件主要解决学 校内部的多个信息系统之间跨系统、跨异种数据库的信息传递和数掘共享问题。 本文在回顾传统的分布式异构环境下三种数据交换技术的基础上,结合教育 管理软件的自身特点,通过研究教育管理信息互操作框架规范,对规范中的核心 部件区域集成服务器进行了方案设计。并着重研究了z i s 部件中的报文传输层服 务、报文队列服务和报文安全通信服务,初步实现了一个分布式异构环境下数据 共享和互操作平台的原型系统。在这个原型系统上实现t h t t p s 协议下的报文传 输和安全通信,利用j m s 提供消息队列存储服务保证了报文的持久稳定的保存, 通过设计的消息路由器转发消息较好地解决框架中的数据共享和互操作。由于系 统采用组件化的设计思想,各层之间松散耦合,可以做到即插即用,具有较好的 系统开放性。 关键字:教育管理互操作;消息服务;数据集成:区域集成服务器 a b s t r a c t w i t hd e v e l o p m e n to ft h ee d u c a t i a n a li n f o r m a t i o nb a s e do ni n f o r m a t i o n p l a t f o r mo fc o m p u t e rn e t w o r ki ns c h 0 0 1 t h ep r o b l e mi nd a t as h a r i n ga n d e x c h a n g i n gb e c o m e sm o r ea n dm o r ev i s i b l ea n di m p o r t a n t a sar e s u l t ,a s e r i e so fc r i t e r i o i i si ne d u c a t jo n a li n f o r m a t i o nm a n a g e m e n ti sn e e d e d u r g e n t l y e d u e a t i o nm a n a g e m e n ti n f o r m a t i o ns y s t e m i n t e r o p e r a b ih t y f r a m e w o r ki sak i n do fs u c hc r i t e r i o n ,i t sp u r p o s ei st os 0 1 v et h ed i f f e r o fd a t af o r m a t sa n dd i f f i c u l tt oi n t e g r a t e r h i sc r i t e r i o nd e s c r i b e sa d a t as h a r i n ga n di n t e g r a t e sp l a t f o r mb yt h em o d e lo fa g e n t z l gw i t h o u t c h a n g i n gi e g a c ys y s t e m s u n d e rs u c hb a c k g r o u n d s ,t h i sp a p e rm a k eas t u d y o ft h ez i s ,e x p l o r e sh o wt os o l v et h ep r o b l e mi nd a t as h a r i n ga n de x c h a n g i n g a m o n gt h ev a r i a b l es y s t e ma n dd a t a b a s es y s t e m i nt h i sp a p e r ,w ed i s c u s st h r e ek i n d so fm e c h a n js m sf o re x c h a n g i n g d a t a b ya n a l y z i n ge m i fa n dt h ec h a r a c t e r i s t i co fe d u c a t i o nm a n a g e m e n t i n f o r m a t i o ns y s t e m as c h e m ao fk e yc o m p o n e n tn a m e dz i si nt h ee m i ri s b u i l tu p i nt h es c h e m aw ef o c u so nt h es e r v i c e so fm e s s a g et r a n s f o r m , t h es e r v i c e so fq u e u ea n ds e c u r i t yo fd a t ae x c h a n g i n g ap r o t o t y p es y s t e m o fd a t as h a r i n ga n de x c h a n g i n gi nt h ed i s t r i b u t e da n dh e t e r o g e n e o u s s y s t e m sisa ls oi m p le m e n t e d i nt h ep r o t o t y p es y s t e m ,w euseh t t p st oo f f e r t h em e s s a g et r a n s f o r m i n ga n dt h es e c u r i t yo fd a t ae x c h a n g i n g i no r d e r t og u a r a n t e et h es t o r a g eo fm e s s a g es t e a d i1 ya n dp e r m a n e n t l y ,w eu s ej m s t oo f f e rt h es t o r a g eo fm e s s a g eq u e u e w ea l s od e s i g nac o m p o n e n tn a m e d r o u t e rt ot r a n s f o r mm e s s a g e i ti sag o o ds c h e m et os o v et h ep r o b l e mi n d a t as h a r i n ga n de x c h a n g i n g b e c a u s eo fa d o p t j n gt h ec o m p o n e n td e s i g n p r i n c i p l e ,t h ea p p l i c a t i o ni n t e g r a t i o nf r a m eo ft h ec o m p o n e n tb a s e dl o o s e e o u p l i n ge n t e r p r i s ei sb u i l tu p :t h ec o m p l e t es y s t e mcanb ec o n s t r u c t e d b ya s s e m b l i n gt h e s ec o m p o n e n t si nap l u g a n d p l a yf a s h i o n w i t ht h e i n t e r o p e r a t i o no fz i sa n du s e ra g e n t ,t h es y s t e mc a nd i s c o r e ra n dr e t r i e v e i n f o r m a t i o ni na no p e na n dd y n a m i c a l l yc h a n g i n ge n v i r o n m e n t k e y w o r d s :e d u c a t i o nm a n a g e m e n ti n f o r m a t i o ns y s t e m i n t e r o p e r a b il i t y f r a m e w o r k :j m s :d a t ai n t e g r a t i o n ;z o n ei n t e g r a t i o ns e r v e r 河海大学硕上论文 基于b m i f 的消息服务集成平台研究 1 1 研究背景 第一章绪论 随着教育信息化的迅速发展,我国各级教育行政部门和各级各类学校已经开 始采用计算机和网络辅助教育管理工作,并建立相应的管理信息系统。但是,由 于缺乏有关教育管理方面的标准和规范,造成建成的管理系统之间兼容性差、数 据信息资源难以交流和共享。 为了祢补以上不足,推动教育信息化工作向规范化和健康化方向发展,国家 教委特制定了教育管理信息化标准。这套规范提出了教育管理信息系统之间 互操作的三个规范:体系结构规范、数据规范和接口规范,虽然在教育管理信息 系统互操作方面给予了我们一些解决思路,但对于具体应用什么技术去实现这些 规范,规范并没有详细加以说明,因此需要我们在仔细研究教育管理互操作规范 的基础上,结合当前的管理信息系统之间数据共享和互操作的研究现状,寻找合 适的解决途径。 1 2 研究现状 教育管理信息系统( e d u c a t i o nm a n a g e m e n ti n f o r m a t i o ns y s t e m ,简称e m i s ) 之间的互操作有两个层面: 1 学校内部各管理部门之间的e m i s 互操作问题。 2 学校与上级教育管理部门之间,以及学校与学校之间e m i s 互操作问题。 第一个层面的问题,也是基于校园网的e m i s 要解决的问题。由于国内各级 各类学校校园网发展的不平衡,在e m i s 方面并存着三种模式:即单机管理模式、 部门局域网管理模式和基于校园网的全校管理模式。前两种模式下的e m i s 相对 封闭、各自独立运行,都存在数据重复录入、统计数据不一的现象,因而难以形 成决策依据,严重制约了信息的有效利用。 而基于校园网的全校e m i s ,是以各部门管理系统为基础,不但满足部门内 部管理的需要,还通过部门管理系统的互操作作为其他部门甚至全校师生员工提 供信息服务,便于各部门之间的信息共享与交流,是e m i s 发展的方向。 为建立基于校园网的全校e m i s ,实现校内各种信息系统的信息共享与交换, 在开发策略的选择上,目前存在三种方案“1 3 : 1 规定校内各部门停止使用原系统,全面安装统一的“新系统”: 2 在原有的系统上逐步改造,直至新系统能替代所有旧系统; 3 在各个旧系统上构筑新系统平台,通过新平台实现信息资源共享; 河海大学硕上论文基于e m i f 的消息服务集成平台研究 第一种方案,一方面代价太大,以前所有运行的系统要很平滑的移植到新系 统中也很困难,对已经习惯旧系统的客户而言,要重新接收一种新系统也会有点 不习惯。而且同时也带来了行业垄断的危机。因为在后续的系统完善中,软件更 新的控制权掌握在同一软件提供商手中,这样必然失去竞争和激励机制,从而导 致行业垄断,难以保证持续的优质服务。同时,教育管理信息系统还应该允许一 定的个性化,不能抹煞各个学校自己管理方面的特点。因此一个地区采用统一管 理软件并不是解决互操作问题的好方案。 第二种方案,绝大多数系统进行重新开发,部分系统进行改造,尽可能继承 原有系统的信息资源。采用这种方案,在一定时间内能够起到较好的效果,但开 发周期一般太长,维护起来很不方便,难以让人们接受。另外还应预料到这样的 情况:往往前面的系统还未完成,学校的管理体制就开始发生变化,花很长时间 刚刚建成的新系统也可能不适应新体制。 第三种方案,以不改变现有的管理模式为前提,将分散在各部门的管理信息 集成到校园网络管理平台上来实现共享,各部门原有的信息管理职能和维护权限 不变。这种方案回避了e m i s 建设中复杂的管理重组问题,是目前阶段比较适宜 的解决方案,在较短时间内就可以见效,前提是要有必要的标准,以解决数据冗 余和一致性问题。 对于第二个层面的问题,即学校和学校之间,学校与教育管理部门之间的互 操作问题,目前主要存在两种解决方案。 1 也是强制所有学校的教育管理机构都采用统一的软件; 2 为不同教育管理信息系统之间的互操作建立接口; 很显然,强制所有学校的教育管理机构都采用统一的软件,是不合时宜的。 第二种方案,为不同教育管理信息系统之问的互操作建立接口。由于没有使用标 准的数据格式,必须事先为当前的系统之间的数据交互编写专用脚本,以使被提 交数据能转换为其他程序的数据库能理解的格式。大多数厂商确实提供了应用程 序界面( a p i ) 存储数据,然而,a p i 往往是专用接口并且要求专业知识,每次当 软件升级时,必须重新编写脚本,这样一方面浪费时间,另一方面也浪费资金。 在一般情况下,是由两个厂商合作提供一致的数据接口,编写点对点转换数据的 脚本,然而,如果增加第三个厂商,就需要与前两个厂商分别编写接口程序。增 加的厂商越多,这种实现就越复杂。 异构数据源的集成是数据库领域的经典问题,并随着x m l 技术和中间件技术 的兴起,再次成为该领域的一个研究热点。数据集成的研究始于7 0 年代的中期, 其发展大致可以分为两个阶段:第一阶段以多数据库系统的研究为主。这方面的 研究基本上可分为三大类,第一类采用物理上分布、逻辑上集中的系统结构,系 统有全局的模式,这种模式下任何一个局部数据模式的修改都会引起全局模式的 河海大学硕上论文基十e m i f 的消息服务集成平台研究 修改,所以各数据库结点缺少自治性,难以管理和集成。第二类是m c e l e d 于八十 年代中期提出的联邦式数据库系统的概念,这是一种逻辑上和物理上都分布的结 构,每个结点有自己的联邦模式,而不是唯一的全局数据模式,由于不再受制于 全局模式,结点的自治性得到加强,数据库系统的集成、扩充和重新配置也较为 方便和自然,但是数据库之间的通信受限制。第三类是l i t w i n 等人倡导的多库 语言数据集成方法,这种系统既无统一的全局模式,也无局部的联邦模式,结点 自治性更强,但用户必须接受一种新的数据语言,透明性较差。 数据集成发展的第二阶段开始于九十年代中期,这一时期随着计算机网络的 普及和w w w 的出现,传统的数据集成技术已无法满足人们获取更多数据的需求, 人们要求数据集成系统不仅能集成数据库中的数据,而且能集成非数据库中的数 据,如x m i 。数据、文本数据;不仅能集成传统数据,而且能集成多媒体数据;不 仅能集成已有数据源中的数据,而且能集成随时加入新数据源中的数据,也就是 说,数据集成系统必须具有扩展性和系统开放性,能够做到“即插即用”,这就 是“通用异构数据源集成”的概念。 目前通用异构数据源系统的研究尚处于起步阶段,未有真正的通用数据集成 系统出现,通过包装为各数据源提供标准界面以实现数据集成系统的通用性和扩 展性已形成共识。 近几年来,x m l 技术逐步成为数据集成研究的热点。x m i 。作为一种通用的、 可移植性的数据交换格式,它的出现使得对各种不规则的数据信息( 当然也包括 规则信息) 的标准化描述成为可能,使用x m l 技术为基石建立数据集成平台,是 数据集成技术发展的趋势。 1 3 研究意义 从上面的论述,我们可以得知,e m i f ( e d u c a t i o nm a n a g e m e n ti n f o r m a t i o n s y s t e mi n t e r o p e r a b i l i t yf r a m e w o r k ) 一教育管理互操作框架规范正好为我们提 供了一个解决教育管理信息系统数据共享和互操作的契机。e m i f 是一套为了使 不同的教育管理信息系统之间能够交换和使用彼此的信息而制定的教育管理信 息系统的技术规范,该规范提出了一个教育管理信息系统互操作框架的概念,通 过对框架及其组件的描述,展现了一个由任意多个教育管理信息系统( 简称e m i s ) 组成的开放型网络。 e m i f 是一个分布式的联网系统,由一个或多个e m i f 区域组成,每个区域都 由一一台区域集成服务器和多个应用程序及其代理组成。e m i f 区域的核心部件是 区域集成服务器( z i s ) ,它是一个信息控制中心,主要作用是负责把报文送交指 定的组件,或根据需要向某个代理索取报文n ,。 河海大学硕上论文基于e m i f 的消息服务集成平台研究 管理信息系统之间的互操作问题的关键是数据的互操作,企业信息平台是企 业信息化的解决方案之一,它是在充分利用企业原有系统的基硎l 上,通过消息传 递,实现有业务往来的各应用系统之间的交互,同时从分散的应用系统中提取公 共信息,为企业的信息发布提供及时、准确的数据。这一方案同样适用于教育管 理信息系统之间的互操作。 1 4 本文的工作 教育管理信息系统互操作规范旨在解决目前各个e m i s 之间的互操作问题。 本文在仔细研究e m i f 规范和x 札相关技术的基础上,在利用现有基于心s 的消 息中间件的基础上设计和实现了一个基于e m i f 的消息服务集成平台,也即针对 e m i f 规范的核心部件z i s 进行了一些研究,解决的是第一个层次数据共享和互 操作的问题:校园网内部的单区域数据共享和交互。主要工作包括以下方面: 1 报文传输层服务 2 报文队列服务 3 报文安全服务 为了确保所有的代理和z i s 之间能够互相通信而不用考虑软件的生产厂家 是谁,所有的代理和z i s 都应该支持h t t p 传输层协议,报文传输层提供了一个 客户端代理和z i s 之间通过h t t p 协议传输的通道,使得客户端和服务器端可以 直接通过防火墙通信。而且采用业界广为支持的h t t p 协议进行通信,使得产品 的适用性和可移植性更好,本文在研究了当前h t t p l 1 协议及一般的h t t p 服务 器技术的基础上,根据系统需要设计和实现了一个提供持续连接机制和主动服务 机制的h t t p 服务器以满足报文传递需要。 g m i f 规范中消息传递采用的是异步传输方式,本文在研究和分析当前分布 式环境下三种主要的数据交换技术的前提下,认为采用消息中间件的消息队列机 制是一个比较好的解决方法。采用报文队列服务的优点是:可以保证报文的稳定 持久保存,即不会中断报文传递,一个报文队列服务器管理所有的队列中的报文, 并且有高可靠性。有安全机制,可提供身份验证和数据加密的服务,为了降低开 发难度,我们采用第三方提供的3 m s 消息中间件,适当配置后提供e m i f 的报文 队列的存储服务,为了控制消息的流向和正确处理,系统还设计了一个消息路由 器及相应报文处理组件,根据系统定义的规则进行消息的存储、转发及其消费。 e m i f 报文通过网络在区域集成服务器和客户端代理程序之间进行传递,有 些数据是敏感的,这些信息在网络中传输时都有可能被拦截,因此为了保证数据 的安全,系统提供了报文的安全服务,对这些数据使用加密、验证和安全的通信 协议来保护这些数据的安全。报文安全服务层并不是个独立的层,只是从功能 河海大学硕上论文 基于e m i f 的消息服务集成平台研究 上划分,本文才将其独立出来加以分析和论述,它的很多功能是在报文传输层实 现的。本文在讨论了关于安全方面基本概念的基础上,通过分析了s s l 协议的握 手过程,最后给出了一个提供客户端和服务器端双向认证机制和数据加密的安全 服务方案。 整个系统采用j a v a 技术,利用标准的x m l 格式封装报文,代理和z i s 通过 h t t p s 协议进行通信,以解决系统安全性和可移植性问题,保证可以在不同的操 作系统中的进行数据交换,实现跨系统的数据交换;x m l 作为可移植的数据格式, 可以保证不同的数据库之间的数据交换,以实现跨异种数据库的数据交换。采用 实时触发和异步传输相结合的机制,以实现数据交换的实时性和稳定持久性。 1 5 本文章节安排 本文分为7 章 第一章、绪论。主要介绍了基于e m i f 的消息服务互操作平台研究的研究背 景、研究现状和研究意义以及本文的主要工作。 第二章、相关理论及技术基础。介绍与本文所关联的一些概念和技术,包 括:首先介绍了x m l 作为可移植性数据的特点及相关技术;然后 详细介绍了以x m l 技术为基础的教育管理信息互操作框架;最后, 通过分析分布式环境下的三种数据交换技术,论述采用基于消息 中白j 件的系统实现数据交换的优点和前景。 第三章、基于e m i f 消息服务集成平台的设计。本章主要从企业信息平台中 消息机制的应用以及消息传递的流程介绍了整个系统的设计。 第四章、 基于e m i f 消息服务集成平台的实现。根据前一章的设计,逐个描 述了整个系统的一些技术难点的解决方法和实现细节,并在最后 给出了系统的一个测试实例。 第五章、小结与展望。总结了本次研究项目的成果,及其没有完成的工作, 并给出教育管理信息系统互操作多区域互联的一些技术展望。 河海大学硕上论文基于e m i f 的消息服务集成平台研究 第二章相关理论及技术基础 2 1x m l 技术基础 x m l 即e x t e n s i b l em a r k u pl a n g u a g e ( 可扩展标记语言) 的缩写。正如j a v a 带来了一种完全可移植的变成语言,x m l 将带来一种完全可移植的数据格式”1 。 本节将从x m l 的特点及其相关的技术论述x m l 作为可移植性数据为异构数据 库环境下数据的互操作提供了一个好的技术支持。为后续章节介绍e m i f 规范及 其系统的设计实现作一些技术基础准各 2 1 1 什么是x m l x m l 是种具备一定移植性和可读性的、用于在程序间交换文字和数据的格 式。x m l 起源于父标准s g m l ,理解x m l 的一种方式是,它是对h t m l 的一种整理 和加强,并且增添了定义自定义标签的功能。与h t m l 相比,它带有能够标识信 息内容而不仅仅是格式的标签。x m l 是跨i n t e r n e t 进行b 2 b ( 企业企业) 通信 等操作的通用交换格式。x m l 完全面向数据内容,是自描述语言,可以描述线性 表、树、图形等数据结构,从而能成为不同应用系统之间的一种通用数据接口标 准,便于不同系统之间信息的传输。 2 1 2x m l 相关技术 x m l 是一套定义语义标记的规则,这些标记将文档分成许多部件并对这些部 件加以标识。它也是元标记语言,即定义了用于定义其它与特定领域相关的、语 义的、结构化的标记语言的句法语言。同h t m l 一样,它也是网络上的通用语言, 但x m l 是结构化的文档,它分离了数据的内容与表现的形式,用户可以自己定义 所需的标记及属性名,具有相当的灵活性。 一个完整的x m l 主要包括四个元素: 1 x m l 文档 2 文档类型定义d t d ( c a s c a d i n gs t y l es h e e t s ) 3 可扩展的样式语言x s l ( e x t e n s i b l es t y l el a n g u a g e ) 、 4 可扩展链按语言x l i n k ( e x t e n s i b l el i n kl a n g u a g e ) 或x m l 指针语言 x p o i n t e r ( x m lp o i n t e rl a n g u a g e ) 。 x m l 文档中描述了存储数据的实体内容;d t d 定义了x m l 文件中的元素、元 河海大学硕上论文 基于e m i f 的消息服务集成平台研究 素的属性以及元素与元素属性的关系,规定了x m l 文档的逻辑结构;c s s 或x s l 规定了文档的具体表现形式:x 1 i n k 或x p o i n t e r 则建立了x m l 文档与w e b 上的 简单链接。 2 1 3 使用x m l 的目的 x m l 文件基本上也是一个文本文件,因此可以在任何系统上进行编辑,需要 管理文档的公司可以有几种理由采用x m l 作为标准”1 : 1 简化数据交换x m l 提供了行业成员之间的信息电子共享的标准数据定 义。例如,图书馆可能希望从学生信息中心的学生信息数据库中提取所 选的学生的基本信息。如果学生信息中心使用了业界承认的x m l 标记描 述学生信息数据库中的学生基本信息的话,那么就简化了学生基本信息 的查询。 2 组织文档x m l 使公司可以方便地标识可以用x m l 标记重新调出的文档 组件。例如,学校w e b 站点通常要筛选学生的一些信息发布在互联网上 以便用人单位进行选择。这包括学生的一些可以公布的基本信息,以及 其他一些可以发布信息,通常这些信息分布在学校内部各个子系统的数 据库中。利用x m l 各子系统可以非常方便地提供这些信息,因为学校w e b 站点是用x m l 标记学生的一些信息的组件。 3 可复用的文档元素公司可以通过引用现有文档中的元素并利用这些 x m l 标记创建新的文档。假设学校希望创建学生信息中特困生的基本信 息,可以通过引用常规学生基本信息目录中选定的x m l 标记,就可以将 这些特困学生的基本信息轻易地组装到学校特困生信息的目录中。 4 标准化信息的显示用基于x m l 语言创建的文档,每一个元素都包括显 示元素的规则。例如,产品价格信息的显示格式与描述价格信息的x m l 标记相关联。因此,x m l 提供了信息显示的一致性。 5 可用浏览器读取i n t e r n e te x p l o r e r 5 ( 包括用于m a c i n t o s h 和w i n d o w s 操作系统上的) 和n e t s c a p e 6 浏览器可以显示x m l 文档。 2 1 4 创建x m l 一个x m l 文档可以分成两个基本部分:首部( h e a d e r ) 和内容( c o n t e n t ) 。首 部给出了x m l 解析器和x m l 应用程序信息,从而指明了处理该文档的方式;内容 就是x m l 数据本身。 对于x m l 文档,有两个重要概念: 1 有良好的结构:任何x m l 文档对任何类型的应用以及正确的解析都必须 河海大学硕上论文 基于e m i f 的消息服务集成平台研究 具有良好的结构( w e l 卜f o r m e d ) ,一个结构良好的文档应当是,每一个打 开的标签必须有匹配的结束标签,不得含有次序颠倒的标签,并且在语 句构成上符合技术规范的要求。x m l 文档没有任何语法规则,但是必须服 从一定的句法规则。这些规则以后将被x m l 类型的应用程序及解析器用 来识别文档,以及对数据执行一些操作。 2 可以是有效的( v a l i d ) :所谓有效性是指符合其文档类型定义( d t d ) 的文 档,简单地来说,d t d 为x m l 格式定义了语法和标签集。如果一个文档指 定了一个d t d 格式并且符合该d t d 的规则要求。这个文档就可以称为有 效文档。x m l 文档也可以用一种模式( s c h e m a ) 来约束。这种模式是一种规 定x m l 格式的新方法,并且将取代d t d 。如果一个文档符合一个模式的规 定,这个文档称为是“模式有效的”( s c h e m av a l i d ) 。 对于x m l 文档的创建,一般是用x m l 编辑器创建静态的x m l 文档和利用j a v a 动态的创建x m l 文档。现在利用更多的是越来越多的新型技术在内存中创建x m l 文档,一些通用应用程序,包括x m l 编辑器和开发环境等需要修改和创建x m l 数据。一般做法是利用x m l 的解析程序进行处理,如:s a x 、d o m 、j d o m 等。 2 1 5 解析x m l 在程序化地处理x m l 时,首先要做的事情之一,是获取一个x m l 文件并解析 它。当该文档被解析后,其中的数据对使用解析器的应用程序就可用了,这样我 们就得到了x m l 应用程序。从应用的角度看,在一个x m l 文档的生命周期中有两 个基本的阶段,首先是解析文档,然后是如何操作文档中的数据。 s a x 是简单a p i ( s i m p l ea p if o rx m l ) 的缩写。它提供了一个用来解析x m l 数据的基于事件的框架,它扫描整个文档,并将数据拆解成几个有用部分的一种 处理过程。在该过程的每一步中,s a x 都定义了可能发生的事件。必须明确的是, s a x 只是为解析器提供了一个可用的框架,而且定义了解析过程中用于监视的事 件,s a x 必须要有一个解析器来执行x m l 的解析。现在j a v a 出现了很多非常出 色的解析器。如s u n 公司的p r o j e c t x ,a p a c h e 软件基金会的x e r c e s ,o r a c l e 的x m l 解析器以及i b m 的x m l 4 j 。这些都可插入s a xa p i ,并产生解析过的x m l 数据。s a xa p i 为文档解析提供的足方法,而不是x m l 解析器本身。 树是作为对象模型( o b j e c tm o d e l ) 工作的。对象模型的代表是d o m ( d o c u m e n t o b j e c tm o d e l ) 。d o m 是w 3 c 的推荐标准,定义了用于访问和修改x m l 文档的样 式、结构和内容的编程接口。d o m 基于树的思想,一次性将一篇结构化文档全部 解析,然后生成一个对象树来描述该文档,之后对于该文档的所有操作( 如修改、 查询等) ,均在该对象树上进行。然而d o m 也有一个很大的缺陷,因为d o m 将整 河海大学硕上论文基于e m i f 的消息服务集成平台研究 个文档都读入内存,资源负载会很重。这就经常造成应用程序运行缓慢甚至瘫痪。 文档越大越复杂,这种缺陷就越明显。 j a x p 是s u n 公司的x m l 解析j a v aa p i ( j a v aa p if o rx m lp a r s i n g ) 的简称。 作为x m l 开发类库的新类,j a x p 试图为s a x 和d o m 的a p i 提供核心。 利用j a x p ,我们不必直接导入厂商的解析类,而可以通过一个系统属性来 指定所要使用的解析器。然后,j a x p 能够读取该属性并处理所需类的加载工作。 靠这种方法,要改变所需解析类的执行只需要重新指定解析类的系统属性,正如 应用代码中使用s u r l 公司提供的抽象层封装一样。 2 1 6 约束x m l 约束x m l 是利用它所引用的d t d 或者模式中设置的限定条件,除了可以使 x m l 文档的用户理解数据如何被表示以及数据表示什么外,约束x m l 文档还可以 帮助应用程序理解x m l 文档。约束x m l 的目的: ( 1 ) 保证一个文档既是良构的,同时也是有效的。 ( 2 ) 约束x m l 文档有助于避免文档中元素产生歧义。 ( 3 ) 可移植性:除了帮助x m l 文档的用户理解数据如何被表示以及数据表示 什么之外,约束x m l 还有助于其他应用程序理解x m l 数据。 d t d 的工作是定义数据如何被格式化。它必须定义x m l 文档所允许的每个元 素、每个属性以及每个元素可以接受的属性值、每个元素的嵌套和事件以及任何 可能的外部实体。d t d 通过定义数据的结构,使这些数据被许多不同的程序以多 种方式使用。 x m l 模式是w 3 c 推出的一个新的工作草案,目的是为了祢补d t d 存在的问题 以及局限性。除了能更精确地处理x m l 结构约束的表示之外,x m l 模式还可以为 约束数据的处理提供一个x m l 样式。模式实际上是x m l 文档,这些文档带有标准 格式,并且是有效的。这允许解析器和能够读取x m l 文档的应用,能够以一种类 似处理其他x m l 文档的方式来处理x m l 模式文档,而不像处理d t d 文档那样,需 要采用专门的技术。 2 2 教育管理信息互操作框架 随着教育管理信息化带来的数据共享与交换问题的日益突出,教育信息管理 方面急需一套完善的规范,我国在借鉴美国s i f ( s c h o o li n t e r o p e r a b i l i l yf r a m e w o r k ) 规范的前提下,制定了自己的一套教育管理信息系统互操作规范。本节 的大部分内容来自于后面的参考文献,要对规范进行详细了解,可以查阅文献 1 3 ,6 - - 8 。 河海大学硕上论文基于e m i f 的消息服务集成平台研究 2 2 1 s i f 规范制定与实施 几年前,美国从事教育行业的人员意识到,k 一1 2 ( 中小学和幼儿园) 教育工作 面临的最紧迫的挑战之一是软件的互用性,即如何使不同的软件应用者能够分享 信息,以提高效率,减少花费,解决问题的关键就是制定一套教育管理系统的技 术规范。 规范的制定必须做到与平台无关,与应用程序无关,利用一致、标准的客户 机界面存耿、解释和显示数据,这样对于不同的应用程序才有实用价值。x m l 恰 好就是一种格式独立、与平台和应用程序无关的可扩展标签语言,它不但适合存 储结构化数据,而且能够定义针对不同行业不同领域的特点定义标签,制定记录 行业或专业数据的标准,这些标准被称为x m l 词汇,只要行业或专业领域内所有 的应用程序都理解并支持所定义的x m l 词汇,就可以实现不同系统之问的数据共 享与互操作。 根据这一思路,美国的一些教育软件公司和社会团体发起了学校管理系统规 范的制定活动,并将最终的解决方案命名为s i f ,即学校互操作框架。目前s i f 工作组已经开发出了s i f 执行规范的草案,最新版本是由软件与信息工业协会 ( s i i s ) 在2 0 0 1 年6 月1 5 日发布的 s i f 的执行规范1 0 1 版和s i f 数据对象 规范1 0 版。该规范以数据对象与报文的形式对数据规范与互操作协议进行了 定义。 s i f 的任务是为各种各样的教育软件提供互操作,也就是能够使用不同的软 件方便地进行数据共享,交换,更新等等。如果教育软件缺少共同的元数据规范 和数据交换协议,就不能直接共享同一数据,通过编写脚本进行数据互换会增加 成本。而s i f 可以很好地解决这个问题,通过使用x m l 定义共同遵循的数据对象 ( 如学生、教师) 和数据传输协议,就可以方便地进行软件间的互操作,如果学校 使用的软件都支持s i f 和x m l ,那么学校就可以针对不同的任务选择合适的应用 程序,通过在一种应用程序中插接另一种应用程序模块,还能创建灵活的、更强 大的解决方案。利用x m l 这样的中间格式,每个应用程序都能够维护自己的格式, 只要它简便、精确地把数据转变成x m l 或由x m l 转变成数据。 2 2 2e m i f 规范的制定 e m i f 规范是c e l t s ( c h i n e s ee - l e a r n i n gt e c h n o l o g ys t a n d a r d s ,简称c e l t s ) 技术规范体系中教育管理信息系统互操作规范( c e l t s4 0 ) 的简称。该规范在 对s i f 规范进行了深入研究的基础上,参考了s i f 体系结构与报文规范,建立了 我国教育管理信息系统互操作框架( e m i f ) ,并引用了教育管理信息化标准的 0 河海大学硕上论文基于e m i f 的消息服务集成平台研究 第一部分( 学校管理信息标准) 作为e m i f 的数据规范部分。2 0 0 2 年1 0 月,教育 部发布了教育管理信息系统互操作规范( c e l t s 一4 0 ) 的征求意见稿。教育管 理信息系统互操作规范是为了使不同的教育管理信息系统之间能够交换和使用 彼此的信息而制定的教育管理信息系统的技术规范。 e m i f 规范主要由三个部分组成:e m i f 的体系结构、e m i f 报文规范、e m i f 数据规范。e m i f 数据规范是最基本的规范,它是e m i f 报文规范的基础,是对e m t s 系统导出的数据模式进行的规定。而e m i f 报文规范则是建立在e m i f 数据规范之 上,通过报文将数据包装起来,而报文则包含了报文发送者、发送时间、发送地 点等内容,报文规范对1 1 类报文的数据模型进行了定义。e m i f 体系结构则描述 了构成整个互操作框架的各类组件,组件各自的功能以及互操作的实现模式。 e m i f 框架的最终建立必须以框架内各组件对报文规范和数据规范的遵守为前 提。 2 2 3e m i f 的体系结构 e m i f 是一个学校管理系统互操作的解决方案,它的体系结构是一个分布式 联网系统,建立在代理程序和一个称为z i s ( z o n ei n t e g r a t i o i 3s e r v e r ,区域集 成服务器) 的中间层服务器基础上。 每个应用程序软件都创建代理程序,它们充当应用程序与z i s 之间的接口。 代理程序之间并不直接通信,而是通过z i s 间接通信,z i s 是框架中所有代理程 序的集成点。 e m i f 的关键是一种e m i f 报文接发协议所使用并描述所有对象的公共x m l 数 据词汇。这些词汇中最重要的两个部分是:描述交互协议的报文和报文发送的对 象。 对象包括数据对象和事件对象,事件对象是对数据对象所定义信息的变化的 描述,报文可以看作是数据对象和事件对象的载体。 当一个应用程序使得一个数据对象发生改变时,它的代理程序会发出一个包 含描述这一变化的事件对象的报文,z i s 收到这一事件后,将立即将这一变化传 递给其他正在使用这个数据对象的应用程序的代理,从而保证数据对象的更新。 数据和事件对象在代理程序与z i s 之间传递的是以e m i f 报文为载体的。z i s 理解e m i f 报文规范中所描述的所有报文,代理程序使用报文执行提供数据、预 约事件、发布事件、请求数据以及响应请求。 举个例子来说,如果一个学校有学生信息管理系统、学生膳食管理系统以及 图书馆自动化系统,后两个系统需要共享学生信息管理系统本地库中的学生基本 信息的数据,那么它们通过各自的代理向z i s 发出一个预约报文,登记需要共享 河海大学硕上论文 基于e m i f 的消息服务集成平台研究 的数据对象,学生信息管理系统也在此之前登记了可以提供的数据对象。当学生 管理信息系统中的学生基本信息这一数据对象发生了数据的增删、修改等操作 时,同时会向z i s 发出一个包含事件对象的报文,表明数据对象的改变,z i s 就 会立即根据学生膳食管理系统和图书馆自动化管理系统在z i s 中的登记信息,将 这- $ i 文发送给这两个系统的代理程序,代理程序理解这个事件报文,就会在应 用程序中进行相应的处理,从而共享数据和交换数据。 e m i f 架构按照使用范围不同有两种结构体系: ( 1 ) 单区域结构:如下图2 1 所示 图2 1 单区域的e m i f 结构组件 这种体系结构主要用于学校内部( 校园网内) 各e m i s 之间的互操作,举一个 例子,在一个学校内,可能有不同的管理系统,比如学生管理系统、教务管理系 统、人事管理系统、图书馆管理系统等,而这些管理系统实际上都是服务于学校, 他们之间存在数据共享与互操作的需求,因此使这些程序成为一个逻辑上实体有 着非常重要的意义。e m i f 通过一台区域集成服务器将各个管理系统及其代理程 序相连,就可以形成一个逻辑上的实体。z i s 和代理都支持e i l f 规定的x m l 词 汇和语法,通过叫做“报文”的x m l 文档的传递进行数据交换。这样由一个z i s 控制下的实体看作是e m i f 的一个“区域( z o n e ) ”。区域的大小并没有限制,完全 取决于用户的需要。 ( 2 ) 多区域结构 e i f l i f 可以有多个区域,各个区域的z i s 互联可以使不同区域间实现互操作 ( 如图2 2 所示) 。这样就可以建立学校与学校之间,以及学校与教委之间的互联 系统。 河海大学硕上论文基于e m i f 的消息服务集成平台研究 图2 2e m i f 体系结构多区域互联 2 2 4e m i f 互操作的原理 e m i f 通过数据对象、事件对象以及报文实现数据的共享与互操作。 2 2 4 1 数据对象与事件对象 通常,学校使用数据库来存储各种信息,比如学生信息,可以使用“学生姓 名”、“性别”、“籍贯”、“生日”等字段来描述。但是数据库依靠平台,不同平台 的数据库要实现数据交换就必须使用a p i ,通过编写脚本来实现数据交换,这样 势必耗费人力物力。于是,人们想象有一种与平台无关的中间格式的存储,任何 数据在交换前都转换成这种

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论