




已阅读5页,还剩71页未读, 继续免费阅读
(管理科学与工程专业论文)基于xml的分布式信息系统的信息交换构件研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ii 摘 要 随着企业之间协作能力的不断加强和信息技术的发展企业信息系统要求实现 在 web 上的信息共享与实时交换实现不同信息系统的不同格式的数据的相互转换 就成为解决这一问题的关键由于有着自身跨平台的优越性能和良好的扩展性可 扩展标记语言 xmlextensible markup language逐渐成为企业间实现信息共享与 交换的一种标准规范通过 xml文档信息可以正确及时地传送到对方的内部信息 系统 应该说 xml提供了分布式信息系统的异构数据库之间信息交换的新的方式与 技术规范但真正实现这种交换还有很多问题需要解决论文在这方面作了一些研 究 论文首先分析了 xml和基于构件开发两个技术体系 介绍了信息交换构件的创 建及构件中各个功能模块实现的相关技术的研究和发展情况 其次论文在分析了分布式信息系统传统的信息交换模式的基础上着重介绍 了基于 xml的信息交换模式及相关技术并详细分析了基于 xml的信息交换的体 系结构和信息流同时利用构件技术将分布式信息系统的信息交换流程进行构件 化封装创建出基于 xml的信息交换构件x-r 交换构件的架构并对构件的各个 功能模块实现过程中涉及到的核心技术进行详细的分析和研究 最后在理论研究的基础上以网上招标投标为实例探讨了在该实例中如何 运用基于 xml的信息交换模式来替代传统信息交换模式 并针对招标管理中采用的 基于 xml的 x-r 交换构件 详细分析了构件的业务接口即 xml标准数据文档的建 立和 xml schema 模式文档的设计问题并在此基础上提出了建立各行业和行业 中的企业共同遵循的 xml数据文档格式规范以及数据模式标准这一重要概念 随着 信息交换技术的进一步发展这将会成为一个具有重大现实意义的研究领域本文 希望在这方面作一点尝试 关键词: 可扩展标记语言 基于构件开发 分布式信息系统 招标投标 iii abstract with the continuous reinforce of the cooperation between enterprises and the development of information and technology, enterprises information systems are in need of share and real time exchange of information. how to transfer data of different formats belonging to different information systems has become the key point of solving the problem. xml has gradually been a standard criterion for the information share and exchange between enterprises due to its excellent capability and wonderful expansibility in cross-platform communication, which can transfer information correctly and timely to others internal information system. we should say xml provides a new way as well as a new technology criterion for the information exchange between distributed information systems and isomerous databases. however, there are still lots of problems waiting to be solved in this kind of exchange. this paper intends to cover some research in this field. first of all, this paper makes an analysis of the xml technology system and component based development technology system, and then it introduces the research and development of relevant technology on the establishment of the components used for information exchange and realization of function modules of those components. after that, on the basis of analysis of traditional information exchange mode of distributed information system, this paper puts an emphasis on introducing the information exchange mode and relevant technology of xml, analyzing in detail the system construction and information flow of distributed information systems of information exchange based upon xml. using the components technology to make a componential encapsulation of the information exchange function module between isomerous databases, this paper makes a combination of the xml technology and components technology, establishes the information exchange components based on xml and makes a detailed analysis and research on the core technology realized by different function modules of iv those components. finally, based on the theory research, this paper uses a real case of network tender bidding and tender offer, which discussed about how to use information exchange module based on xml to replace the traditional information exchange mode and analyzes in detail the foundation of xml standard data documents and the design of xml-schema mode documents aiming at the xml information exchange component deployed in the bidding management, basing on which this paper proposed an important concept of establishing criteria of xml data document format as well as standard of xml-schema followed by different industries and enterprises belonging to these industries, which will become a challenging research that has great significance in practice with further development of the information exchange technology. this paper attempts to explore in this field. key words: extensible markup language component based development distributed information systems tender biding and tender offer i 独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研 究成果尽我所知除文中已经标明引用的内容外本论文不包含任何其他个人或 集体已经发表或撰写过的研究成果对本文的研究做出贡献的个人和集体均已在 文中以明确方式标明本人完全意识到本声明的法律结果由本人承担 学位论文作者签名 日期 年 月 日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留使用学位论文的规定即学校有权 保留并向国家有关部门或机构送交论文的复印件和电子版允许论文被查阅和借阅 本人授权华中科技大学可以将本学位论文的全部或部分内容编入有关数据库进行检 索可以采用影印缩印或扫描等复制手段保存和汇编本学位论文 保密在_年解密后适用本授权书 本论文属于 不保密 请在以上方框内打 学位论文作者签名 指导教师签名 日期 年 月 日 日期 年 月 日 1 1 概述 1.1 研究课题的背景及现实意义 随着企业信息化建设步伐的逐渐加快和信息系统理论研究的不断深入很多企 业和组织开始建立信息系统并重点考虑将信息系统在各种不同的计算机间进行分 布从而建立企业的分布式信息系统但是由于不同企业的信息化建设程度及方式 存在着较大差异因此造成各信息系统的内部以及信息系统间的信息交换与信息整 合面临诸多困难随着全球经济一体化进程的加快和企业市场化程度的提高企业 内部不同企业间企业与政府间的信息交换与信息整合的自动化处理需求日益迫 切 分布式信息系统有几个显著的特点第一执行分布任务的应用系统运行在不 同的操作平台下如 n t u n i x 等第二执行分布任务的应用系统使用的数据有不 同的数据源如 s q l s e r v e r o r a c l e 等第三执行分布任务的应用系统使用的数 据的类型非常复杂而且不统一例如照片图纸会谈记录报表等因此企业和 组织建立分布式信息系统时需要解决的关键问题就是如何建立一个适合分布式信息 系统的信息交换模式使企业和组织可以跨越不同距离和不同的应用系统来进行信 息的交换和共享 传统的信息交换模式主要依赖于数据库管理系统由于不同数据库的结构描述 是不一样的因此在不同的数据库管理系统中为同一个目的建立的数据库也会 由于系统对库结构的描述方法不同约束条件不同设置的数据类型数据项名称 的不同而不同即使是在同一种数据库管理系统中为相同目的建立的数据库也 会因为由不同的人建立而在结构及约束条件方面有很大区别从而给整个分布式系 统在动态数据发布数据交换数据处理方面带来困难因此分布式系统必须在异 构数据库之间开发并配置专用的驱动程序并且还要在系统的每一个应用层开发并 配置数据处理模块对于一个体系庞大结构复杂的分布式信息系统来说这种开 2 发的工作量是巨大的同时也降低了系统的稳定性提高了系统开发成本 x m l 是解决这些问题的强大法宝其实造成企业信息系统内部和企业与企业间 信息系统的信息交换与整合困难的原因说到底就是各个系统没有统一的数据结构 约定其后果不但是效率低下而且造成信息冗余而且重复开发更会造成资源的 巨大浪费在这种情况下x m l 将起到粘合剂的作用通过它企业内部和企业之间的 各个业务模块能够被有机结合起来信息的交换畅通无阻最终从整体上达到了理 顺业务操作的目的因此对分布式信息系统的基于 x m l的信息交换模式及其实现 这一模式的方法的研究是一个具有很强的应用性的课题 在信息交换机制逐渐由基于数据库技术向基于 x m l技术和数据库技术相结合的 方向发展的同时信息系统的开发方式也逐渐由基于对象技术的开发方式向基于构 件技术的开发方式转变对象技术经过十几年的发展已经十分成熟而构件技术的 研究和实践活动才刚刚开始但是构件技术强大的生命力决定了它最终将取代对象 技术而成为分布式信息系统开发的主流技术i n t e r n e t及软件开发方法工具和环 境的进一步发展将加速构件的组成标准实现技术与应用市场的成熟和完善 本课题是导师指导下的自选课题课题分析了基于 x m l的分布式信息系统信息 交换模式在信息系统构件化开发的思路指导下将系统的信息交换流程进行构件 化封装并构建了一种符合 3 c 构件模型规范的基于 x m l 的信息交换构件为在特定 的应用领域和特定的信息系统中构建可复用的构件的研究进行了一些尝试同时 在将构件应用于具体实例的研究过程中提出了建立相关行业的统一的 x m l标记集 和统一的数据模式的研究思路 1.2 国内外研究与应用现状 目前在国外基于x m l 的分布式信息系统的信息交换模式主要有两种直接使用 x m l 数据库的信息交换模式和使用x m l 技术与关系数据库技术相结合的信息交换模 式目前这两种模式的发展比较平衡第一种模式因为专业性比较强所以对于处 理容量很大的专业领域的数据采用这种模式处理的效率和安全都得到保障但是 3 它的兼容性和扩展性受到了限制相比之下第二种模式具有成熟度高稳定性高 适用性高的特点目前大部分的分布式信息系统采用关系数据库管理系统来进行数 据的存储和交换采用第三种模式更易于企业的资源得到充分的利用使企业以最 低的成本完成旧的系统的升级因此采用这种模式的信息系统的扩展性和兼容性非 常高 对于第一种信息交换模式 有很多系统开始采用 如r u f u s 1 , l o r e 2 和s t r u d e l 3 等国外对第二种信息交换模式中的一些实用技术研究目前已经达到一个高潮微 软的a d o 控件技术可以根据数据库表的内在结构直接输出x m l 文档文档的格式将符 合默认的d t d 定义d b 2 x m l 转换工具是一种将数据从关系数据库转换成x m l 文档的工 具其输出的x m l 文档实际上是一组表格而具体内容取决于用户输入的s e l e c t 命令 语句o d b c 2 x m l 转换工具是由i n t e l l i g e n t s y s t e m s r e s e a r c h 开发的共享软件它 实际上是一个w i n d o w s 动态库通过它可以将数据从数据库中提取出来并转换成x m l 文档 x o s l 转换工具用于将数据从数据库中提取出来并转换成x m l 文档 它运用了a d o 技术并利用特定的x o s l 元素将查询语句嵌入到模板中 国内许多科研单位也在基于x m l 的信息交换领域进行了深入的研究复旦大学建 立了一个v x m l r 原型系统 4 探讨了关于x m l 数据的关系数据库存储的理论并提出了 一种基于s q l 的x m l 查询的有效实现方式东南大学x o b j e c t 小组开发了基于x m l 的数 据交换系统中国科学院软件研究所电子商务技术研究中心发起并组织建立了非盈 利的电子商务技术团体c n x m l 并以此为基础建立中国自主的电子商务技术规范 发展具有我国自主知识产权的电子商务交易规范语言 同时国内许多企业已经开发出了许多采用这种数据交换模式的信息系统具有 代表性有 ( 1 ) 金蝶知识管理系统该系统采用基于x m l 的数据交换模块来连接其他关系型 数据库进行信息的交换和共享 ( 2 ) 广州启宏计算机科技有限公司的启宏x m l 数据交换平台整合了传统媒介之间 的数据交换技术与先进的无线通信技术传真网关s m s 网关邮件网关大大降低 了企业的通信成本并极大提升了通信效率 其核心组件数据交换适配器主要是配 置不同数据格式的映射转换及传送例如格式映射转换传送配置日志监控等 4 启宏x m l 数据交换平台使用的智能报文体系已经有很好的运行经验产品的组件化装 卸特点使企业应用系统的维护方便升级和扩充更为简单 ( 3 ) 深圳应用科技有限公司提出的企业信息门户系统解决方案是一套面向每个 用户包括企业内部员工管理者决策者企业客户合作伙伴企业关联用户 等打破传统应用系统应用功能使用角色地理位置和运营平台的束缚实现随 时升级的全面企业信息化解决方案其发挥核心作用的 a - e i p 系统通过以下方式实 现数据的安全存储传输和使用 数据存储在各自应用系统的独立数据库中 通过x m l 数据交换平台实现不同应用系统间不同数据和应用的调用 跨系统之间的数据调用通过虚拟数据库实现应用调用通过消息代理实现 对每个信息源如终端设备登记用户等 进行身份认证 根据用户权限时间地点及应用系统等不同因素 对系统使用者进行权限访 问的控制 对不同数据进行加密处理以防信息泄露 通过安全网络层的设计提供安全的d n s 防火墙等安全措施系统采用多级 加密处理有非常严格的权限管理 ( 4 ) 北京国信贝斯软件有限公司的i b a s e i n t e r n e t g e a r f r a m e w o r k 内容管理系 统是建立在i b a s e 非结构化数据库核心技术之上集成数据检索文档管理工作流 管理企业数据管理和个性化信息服务支持分布式计算环境的应用服务平台它 通过有效整合组织内外的各种信息资源结合i b a s e 的强大数据管理和全文检索能力 并配以业界各种标准的组件技术不仅为用户提供了对组织内外广泛的信息资源的 访问搜索集成和管理的强大能力同时也为用户部署和开发高可用性高系统 灵活性和伸缩性的数据管理信息发布全文检索等信息管理应用系统提供了强大 高效的应用开发平台该系统提供了x m l 数据交换接口完全支持x m l 技术和基于x m l 的数据交换应用支持w 3 c 的 x s l t d t d x d r 等标准用户可以快捷方便地定义 存储和检索基于x m l 的各种文档 另一方面国外对基于x m l 的行业领域标记语言体系的建立包括数据结构的标 5 准的x m l - s c h e m a 或d t d 描述文档的建立的研究工作也正处于高速发展阶段目前在 一些典型和规范化的领域中基于x m l 的标记语言体系已经建成并逐渐尝试在其它 的领域制定相关的规范开放式财务交换格式o f x 是由c h e c k f r e e i n t u i t 和 m i c r o s o f t 于1 9 9 7 年创建的开放联盟现在它由1 0 0 0 家以上的财务机构技术方案提供 商和工资p a y r o l l 公司支持1 9 9 9 年一群企业代表成立了m i s m o 并在2 0 0 0 年开 始处理行业中的电子商务问题它们的目的是以d t d 形式定义一种x m l 模式它可作 为行业内数据交换的基础 5 另外还有如化学标记语言c m l 数学标记语言m a t h m l 信道数据格式c d f 用于存储人力资源数据的公共词汇的h r - x m l 等 国内的对于基于 x m l的信息交换模式的研究基本处于一种借鉴和修改国外的研 究成果的作法而对于建立行业标准的 x m l的标记语言体系的研究已经有很多学者 正在进行, 但是从整体上看仍然处于一种摸索的阶段随着基于 x m l 的信息交换模式 逐渐成为计算机软件领域尤其是电子商务应用领域的标准模式国内外对信息交 换模式和行业标准语言体系方面的理论和应用研究将达到一个高潮 目前构件技术的研究工作大多强调技术的普遍性和通用性研究的重点停留 在计算机实现领域内的复用问题上构件技术的研究和实践特别是在特定应用领 域的研究和实践才刚刚开始还有很多值得研究和探讨的领域已经有相关的组织 和研究机构开始了对采用基于 x m l技术的中间件来集成异构数据库之间信息的研究 工作 研究主要集中在国外 国内还没有相关的研究 w i s c o n s i n 大学和 i b m a l m a d e n r e s e a r c h c e n t e r共同研究和实现了 x p e r a n t o中间件系统该中间件系统支持对象 关系数据的 x m l 发布支持基于 x m l q u e r y 的 x m l 关系数据视图采用了 f l a t 模式 转化算法以 d t d为目标模式但不支持主外键等约束的描述也不支持多表关系 约束的转化m a r y l a n d 大学研究了基于 x m l 代码自动部署和数据交换m o c h a 中间件 6 对 x m l 模式与关系模式映射的相关算法的研究也主要集中在国外如加利福尼亚 大学的 d o n g w o n l e e提出了基于 x m l的关系数据库发布和基于关系数据库的 x m l存 储和检索提出并初步建立基于约束的模式映射康奈尔大学的 j a y a v e l提出了基 于内嵌的关系数据发布技术等但是很多算法的研究目前只停留在使用 x m l d t d模 式而非 x m l s c h e m a 模式这是一个需要进一步研究的重要方向 6 1.3 论文的主要工作和目标 ( 1 ) 论文介绍了 x m l技术体系和构件技术体系这是两个全新的研究和发展领 域限于篇幅本文只是介绍与论文相关的重要的基本概念和关键技术使读者对 这两个技术体系有一个大概的了解 ( 2 ) 论文分析了基于 x m l 的信息交换模式的系统架构 分析了与传统的交换模式 比较它的特点和优势所在并基于构件模型理论将分布式信息系统的信息交换 流程进行构件化封装提出了一种基于 x m l 的信息交换构件的架构 ( 3 ) 对 x - r 交换构件的各个功能模块的实现技术和相关算法进行了分析 目前的 一些有关关系模式与 x m l 模式相互映射的算法大部分是基于 x m l d t d 模式来实现的 然而基于 x m l - s c h e m a的研究具有更重要的意义 7 论文分析了比较前沿的基于 x m l - s c h e m e 模式的映射算法的一些基本规则由于 x m l - s c h e m a 取代 x m l d t d 只是时 间上的问题因此对于 x m l - s c h e m a 模式与关系模式之间映射算法的研究将是作者 今后的工作和学习的重点本文分析的内容旨在抛砖引玉 ( 4 ) 将采用x m l 技术来进行信息交换的思想运用到一个具体的招标投标实例上 建立了招标投标的基于x m l 的信息交换模式并用信息交换构件来封装信息系统的信 息交换流程使信息交换过程标准化和规范化研究的目标主要是改变传统的信息 交换模式建立以构件为核心的分布式信息系统新的信息交换体系 ( 5 ) 分析了招标管理中所采用的x - r 交换构件的业务接口的实现过程并设计出 相关的x m l 文档和x m l 模式制定基于行业标准的x m l 标记集和标准的x m l 模式是信息 系统信息交换领域的发展趋势也是将构件技术完整的应用于信息交换领域的基础 7 2 xml与基于构件开发技术 2.1 xml及其发展 在 xml 诞生之前已经有两个应用非常成功的标记语言标准通用标记语言 sgml 和超文本标记语言 html但是这两个语言在某些方面都存在着与生俱来的 缺陷 二十世纪八十年代开始使用的 sgml是一个功能非常强大的标记语言 sgml 具有庞大的标记库以及规范的语法结构并且具有极好的扩展性但是也正是因 为它太强大了sgml 非常复杂其复杂程度对于普通的基于网络应用的用户来说 是无法承受的因此几个主要的浏览器厂商都拒绝支持 sgml目前 sgml主要 应用于科技文献和政府办公文件中 在互联网上广泛应用的标记语言 html是 sgml的一个子集 html具有简单 适用 易操作的特点 因此它获得了广泛的支持 国际标准化组织万维网联盟 w3c world wide web consortium于 1998 年批准了 xml1.0 版本一个具有强大发展 潜力的崭新的标记语言终于诞生了xml也是 sgml的一个子集它保留了 sgml 中的精华思想如扩展性而将 sgml 中所有非核心的未被有效使用和含义模糊的 部分删除 具有巨大的生命力 xml的有趣之处在于 它显示了可以这样改进sgml 不是为额外能力而添加功能 而是生成更为简单的分析程序8随着信息技术和 xml 的发展一批用 xml定义的新的标记语言产生了并逐步由 w3c 推荐成为正式的 标准在各个领域中发挥着重要的作用如用于显示矢量图形的 svg用于表现多 媒体效果的 smil用于电子书的 oeb用于手机上网的 wml 和 hdml面向电 子商务的 cxml等 2.1.1 xml与html的比较 与 html比较而言xml具有以下三大优势9 (1) 良好的扩展性 8 xml允许不同行业不同的企业根据需要制定自身的一套标记并且这个标记 库可以迅速投入使用现在一些行业利用 xml定义出了自己的标记语言比较典型 的有 cml化学标记语言和 mathml数学标记语言因此利用 xml的高扩展性来 制定适合不同行业的标记语言体系为行业内部各企业之间实现信息交换和信息完 全意义上的共享奠定坚实的基础是 xml 的发展目标而 html 只拥有固定的标 记库因此对表现形式的描述能力实际上也还是非常不够它无法描述矢量图形 科技符号和一些其它的特殊效果 (2) 严格的语法要求 同目前应用广泛的 html标记语言相比xml对语法的要求要严格得多虽然 二者都是标记的集合但是 xml的语法的自由度比 html小首先在 xml中 每个标记都具有自结束的特点例如以开始的标记必须以结束或 者以”/”结束而在 html 中没有如此严格的限制有些元素只有开始标记而 没有结束标记例如,等其次在 xml中标记的符号是大小写敏感的 与分别表示的是不同的 标记而依照 html 语法标记符号是不分大小写的第三在 xml 文档中数据 内容可以放到标记元素之间也可以嵌入标记元素的属性集中作为属性值存在 如果 xml 文档的语法有任何的差错xml 处理器就会停止进一步的处理严格的 语法要求表面看起来好像使语言体系变得更加繁琐和复杂但是从长远的角度来看 一个具有规范的语法结构的文档将会具有良好的可读性和易维护性同时更容易提 高 xml开发工具的处理效率 (3) 高效的信息交换 随着计算机信息技术的发展不同企业企业的不同部门中都将存在不同的信 息系统各个信息系统可能运行在不同的操作平台上如 ntunix 等使用不同的 数据库系统管理系统如 sql serveroracle 等因此这些信息系统之间的信息交换 将会变得十分困难xml 技术诞生以后不同的信息系统之间可以采用 xml 文档 作为交流媒介xml 文档属于一种半结构化数据xml 可以标注各种文字图象 甚至二进制文件通过相关的 xml转换工具系统就可以高效的读取存储这些数 9 据并在异构的数据库系统中进行信息交换html 主要侧重于信息的表现即网页 的表现形式并不具有在不同的信息系统之间承担起信息交换重任的特质 2.1.2 xml技术体系 xml技术体系如图 2-15所示 图 2-1 xml技术体系 xml文档 + 命名空间 dtd xml schema xslt xpath xlink xquery css xsl xsl- fo xhtml xforms voice xml dom sax rdf 操作技术 模式规范 查询技术 表现技术 2.1.3 xml1.0规范 在网络上传输的数据类型有数据流数据库的结果集以及各种应用程序运行过 程中动态产生的结果这些都可以用 xml 文档来表示 因此制定一套严格的语法 规则来规范 xml 文档以便正确的表述用于交换的网上数据的内容和结构是 xml 首要解决的问题之所以要制定严格的语法规则主要目的是使 xml文档既具有很 强的可读性又容易被处理器理解从而提高处理的正确性和效率符合规定语法 规则的 xml文档称之为格式良好well-formed的文档只有格式良好的 xml文 档才能在xml处理器中被正确的解析 一个格式良好的 xml文档应该符合xml1.0 规范具体来说符合 xml1.0 规范的 xml文档应该满足以下基本条件 10 文档包含一个和多个元素 文档中只有一个根元素且该元素没有任何部分出现在其它的元素中根元 素必须是一个非空标记包含整个文档的数据内容 元素不能交叉 另外设计 xml文档时要注意下面两个问题 (1) 元素与属性的使用 在 xml文档中元素和属性都可以用来表达数据信息如何合理的使用元素和 属性一般要考虑以下几个因素10 属性不能进一步的细分但是元素可以不断的细分为子元素如数据结构要 求把数据加以细分时应首先考虑选择使用元素 将元素用于应用程序产生数据而用属性来描述关于这些数据的元信息 处理 xml 数据的程序必须调用专用的模块来处理属性信息因此过多的 使用属性将增加 xml处理程序的负担 使用属性可以增加文档的可读性 (2) 实体的使用 从使用方式来分实体可分为外部实体和内部实体这种划分主要对应于外部 dtd和内部 dtd 而言从表达内容来分实体又分为已分析实体和非分析实体如 图例文档中出现的实体就可称为内部已分析实体它的内容便是该实体所代表的替 换内容非分析实体是为了解决在 xml文档中使用诸如图形文件视频文件二进 制文件等非文本非结构化数据格式而设计的,在 html文档中可以通过使用内置 的,等标记来引用这些特殊的数据格式而在 xml 文档中这些可以 通过在文档中引用非分析实体得到解决分析实体在 dtd 中声明格式如下 非分析实体在 xml文档中的使用格式与分析实体相同 11 2.2 xml模式 2.2.1 模式定义 使用 xml 文档进行信息交换时需要告知交换的各方该如何构造有效的 xml 文档这时就需要一种各方都应该遵从的模式模式是描述数据形式的一般术语 最初用来定义数据库的结构在数据库和文档领域模式概念的提出已经有许多年 的历史了xml 模式有助于确认 xml 文档内容有助于确定 xml 文档是否符合 xml模式表达的语法它还有助于描述 xml结构总而言之xml模式的作用主 要表现在两个方面 定义有效文档和无效文档之间的差别验证文档的合法性尽可能使应用程 序判断一个文档是否有效的处理过程简单化 记录结构的说明和用法使得数据的传送方和接收方能够对消息有相同的理 解 在 xml中目前有两种模式定义语言文档类型定义 dtd 和 xml-schema dtd是目前应用最广泛的模式定义标准dtd 着重于文档结构它允许 xml设计 者指定适用于 xml实例文档集的元素与属性而 xml-schema 是一种较新的技术 在 2001 年 5 月才被 w3c 采用为正式建议xml-schema 的主要目的是提供一种与 编程语言数据类型相关联的详细结构 从而有助于解决基于 xml的信息交换过程中 出现的诸如数据类型不匹配等相关问题由于具有完善的功能和强大的生命力 xml-schema 成为正式的模式标准指日可待 2.2.2 dtd与xml-schema的比较 由于 dtd 发展比较成熟而且得到了广泛的支持因此在短期内 dtd 还有一定 优势和存在的理由但 dtd 本身存在着很多的不足 dtd提供的数据类型非常有限文档中所表达的具体内容都是字符类型在 一般的应用编程语言中出现的整型实型布尔型等基本数据类型dtd 都不提供 12 对于一些复杂类型诸如结构dtd 就更无能为力了 dtd本身并不是 xml 它拥有自己特殊的语法因此在创建和编写 xml 文档之前必须学习和熟练 dtd 的构建而且在信息交换体系结构中系统必须拥 有两套互不兼容的解析器一套用来分析 xml 的结构判断 xml 文档是否良好 well-formed另一套用来分析 dtd,判断 xml文档是否有效valid dtd的扩展机制过于复杂而且 dtd 扩展机制的最大毛病在于它不能清楚 的表达相互之间的关系两个有着完全相同内容的元素不能相互联系同样的被 定义为参数实体的不同属性之间也不能建立任何联系 与 xml文档和 xml-schema 不同的是 dtd 不支持命名空间 namespace 一个外部 dtd 可以被多个不同的 xml 文档引用但是一个 xml 文档却只能引用 一个 dtd 文档dtd 机制使得 xml的继承性和重用性受到限制 dtd 中的内容模型是不开放的它不能随意扩充内容否则无法被解析 xml-schema 正好解决了以上这些问题151617 xml-schema 本身就是一个 xml文档它直接借助 xml自身的一些特点 利用 xml 的基本语法规则来定义 xml 文档结构因此它可以直接由一些 xml 编 辑工具和制作工具来编辑被一些 xml语法分析器所解析 xml-schema 具有很强的扩展性它不仅能够支持诸如整型实型布尔型 和日期型等基本数据类型还能够定义一些复杂的数据类型在电子商务应用日趋 广泛的今天面对信息交换过程中不断出现的新的数据类型如果没有相应的数据 类型定义机制将是难以想象的 xml-schema 得到了目前十分流行的两个文档解析工具 dom和sax的大力 支持而 dom 和 sax 只对 xml文档有效因此对于拥有特殊语法规则的 dtd 则 无能为力 13 2.3 dom与sax 2.3.1 dom 文档对象模型 domdocument object model是 w3c 支持的标准应用程序编 程接口api它提供了与平台和语言无关的接口允许开发人员通过程序访问和 修改树型结构文档如 html和 xml的内容和结构因为 dom 是语言无关的 所以程序员可使用脚本语言和编程语言来处理 xml从而对数据进行访问和操作 而且还可以随机访问 xml文档的任何一部分数据dom 正在不断的发展以适应 xml 领域中的发展变化到目前为止dom 已经出现了三个版本 w3c 在 1998 年10月通过的 dom level 1 ,2000 年11月通过的 dom level 2和正处于开发阶段的 dom level 314 2.3.2 sax xml简单应用程序接口 sax(simple apis for xml)是一种事件驱动的接口它 的基本原理是当处理器进行 xml分析时遇到了特定的事件 就去调用处理器中特定 事件的处理函数来执行应用程序的处理任务 目前 sax共有两个版本 于1998年由邮件列表成员 xml-dev 发布的sax1.0 版本和 2000 年 5 月发布的 sax2 版本15由于 sax 是一种快速而简单的接口因 此现在应用十分广泛 dom 与 sax 各有特点和优势它们的主要区别如下16 (1) dom是基于树形结构的并由 w3c 推荐的 api 标准而 sax 是文件驱动 的有广泛的支持 api 标准 (2) dom需要把整个 xml文档加载到内存中对于一个复杂的文档这种做法 有时需要耗费很大的内存而 sax 对内存的使用与文档的大小无关 (3) sax不能对 xml文档做随机存取它提供是一种顺序访问机制已经处理 过的数据不能再返回处理而 dom 则有这方面的优势因此dom 适合于结构化 14 编辑 xml文档如排序记录移动和其它应用而 sax 因为具有效率高的优点 则主要完成计算 xml文档节点数提取特定节点内容等工作 (4) dom 已经定义了功能完善的接口和方法需要应用程序做的工作很少而 sax 则需要依靠程序员来完成大量的编程工作 2.4构件技术及其应用 2.4.1 对象技术和构件技术 二十世纪九十年代以来计算技术逐步进入以网络为中心的新时期用户迫切 希望在网络上建立更为丰富的分布式客户/服务器应用不仅实现数据共享而且支 持知识共享和各类计算资源的共享并能实现包括整个企业在内的各个层次的的协 同工作为适应上述要求分布对象技术成为分布式计算环境发展的主流方向 分布式对象技术采用面向对象的客户/ 服务器计算模型将分布于网络上的全部 资源都按照对象的概念来组织每个对象通过定义明晰的接口向外界提供服务经 过多年的发展分布式对象技术已经进入发展成熟期其中公共对象请求代理体 系结构c o r b a , 分布式组件对象模型d c o m 和 j a v a / r m i ( 远程过程调用) 是目前 三个主流的分布式对象技术标准随着信息技术的进一步发展对分布式应用的需 求日益增长已有的分布式对象技术已无法达到信息系统开发过程中的快速低成 本的要求主要不足表现在如下几个方面 1 7 ( 1 ) 由于对象的粒度较小 对象本身缺乏独立交付的能力 因此一个单独的对象 往往无法完成一项独立的系统功能以对象为复用单位复用的完整性得不到保障 ( 2 ) 多个对象间具有复杂的协作关系 增加了系统构造的复杂性 从而给系统的 维护带来困难 ( 3 ) 对象很少考虑对象间的交互问题 或将交互问题仅停留在计算机实现而非特 定的应用领域层面上系统构造时对象之间的胶合复杂度在设计时未给予足够的 重视导致系统设计阶段和具体实现过程脱节 构件技术是软件复用技术发展的新阶段它继承了对象技术对设计信息和实现 15 细节进行封装的思想同时构件技术也克服了对象技术中的许多缺点和与应用现 状不相适应的部分构件与对象的主要区别如下 2 2 ( 1 ) 构件的复用粒度往往大于对象 构件能够完成一组相对完整的任务和业务流 程对象仅能完成一些简单的系统功能 ( 2 ) 构件的信息屏蔽能力和封装完整性高于对象 构件独立于实现语言 不仅封 装系统的功能而且封装连接机制能完全屏蔽设计信息和实现细节对象往往依 赖于特定的编程语言仅封装系统功能组装需要胶合代码并不可避免的暴露部 分设计信息和实现细节 ( 3 ) 构件是可独立交付的系统构造单元 而对象不具有独立交付的能力 构件能 独立交付给第三方用于构建更大的构件或应用系统对象只能以类库或某种源代 码文档的形式随特定的编程环境提供给编程人员 ( 4 ) 构件偏重于复用的规模和易复用性对象则偏重于复用的广度和实现技巧 2.4.2 构件及其特征 构件在不同的学术背景和应用背景下有着不同的定义比较经典的为 d e s m o n d d s o u z a 40 ( 2 ) s i m p l e t y p e 类型的映射 元素或属性的简单类型定义s i m p l e t y p e 根据具体的条件映射为表中一个相应字 段的 c o n s t r a i n t 限制例如 映射为 c r e d i t _ g r a d e v a r c h a r 2 ( 2 0 ) c o n s t r a i n t c h e c k ( c r e d i t _ g r a d e i n ( “a a a ”, ”a a ”, ”a ”) ) ( 3 ) c o m p l e x t y p e 类型的映射 x m l - s c h e m a模式中的每一个复杂类型 c o m p l e x t y p e映射为数据库中的一个关系 表在设计 x m l - s c h e m a模式过程中实体间的各种物理关系被描述为 c o m p l e x t y p e 中的包含c o n t a i n m e n t 和引用( r e f e r e n c e ) 关系因此将一个复杂类型映射为 数据库中的一个单独的表时必须要将它所体现的内在实体关系转化为数据库中的 表关系下面是几种典型关系的映射规则 复杂类型 a 含有对复杂类型 b 的一个引用 由于 c 能被其它的元素的 t y p e 项所引用因此 a 元素与 b 元素的反映的是实体 的多对一的关系而且复杂类型 b必须在 a之前创建在映射过程中只需要在 数据库中创建两个表: 表 a _ t a b l e和表 b _ t a b l e 约束关系级联删除参考完整性即 从依赖表 a _ t a b l e中删除其外部键与表 b _ t a b l e中要被删除行的主键值相匹配的所 有行例如如下的关系 41 a_table b_table * 映射为 t a b l e a _ t a b l e c o n s t r a i n t a _ b _ r e f f o r e i g n k e y b i d r e f e r e n c e s b _ t a b l e ( i d ) o n d e l e t e s e t n u l l t a b l e b _ t a b l e c o n s t r a i n t b _ p k e y i d p r i m a r y k e y 复杂类型 a 含有对复杂类型 c 的多个引用 由于 c 能被其它的元素的 t y p e 项所引用因此 a 元素与 c 元素的反映的是实体 的多对多的关系而且复杂类型 c必须在 a之前创建所以在映射过程中必须 创建一个中间表 a _ c _ l i n k 因此在数据库中将有三个表将被创建当 a 或者 c 中的 一个元组被删除时表 a _ c _ l i
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 护理区设计理念及要求
- 研究生院年终总结
- 预应力砼现浇箱梁施工质量通病及预防措施
- 树立正确的价值观汇报
- 事物的普遍联系
- 事故安全警示教育培训课件
- 血液透析患者导管护理
- 荨麻疹患儿的护理
- 物业园林部年度工作总结
- 门诊接种工作汇报
- 超星尔雅学习通《当代大学生国家安全教育》章节测试答案
- 房建类工程施工方案
- 中国腹腔镜胃癌根治手术质量控制专家共识
- 离散数学概论第2版田秋红习题答案
- 2024年辽宁省成考(专升本)大学政治考试真题含解析
- 风能发电技术的未来发展趋势与展望
- 消防救援队伍作战训练安全行动手册
- 营造林技能竞赛试题及答案
- 35kV变电站施工组织设计资料
- 保障农民工工资支付协调机制和工资预防机制
- 铸剑先生行为分析技术
评论
0/150
提交评论