问答题 随着信息技术在世界范围内的迅猛发展,特别是网络技术的普及应用,电子政务(或电子商务,或其他类似应用项目,下同)正在成为当代信息化的最重要领域之一。在基于Web的电子政务系统中,可能存在着多种不同的操作平台和数据库系统,如何实现在Internet上对异构的数据进行访问,是设计电子政务系统开发人员必须解决的问题之一。基于XML技术的异构数据库系统是解决该问题的方法之一。
请围绕“基于XML的异构数据库系统架构与应用”论题,依次对以下3个方面进行论述。
1.概要叙述你参与管理和开发的数据库管理系统工程项目及你在其中所承担的主要工作。
2.简要介绍异构数据库系统的异构性体现在哪些方面,具体论述你是如何在所管理和开发的软件工程项目中应用XML技术的,详细描述XML的特点和优点,在项目实施过程中遇到的问题及解决的办法。
3.分析与评估你在异构数据库系统平台上采用XML技术的效果,简要展望XML未来的应用前景,以及你进一步应用XML的有关设想。

【正确答案】1.简要介绍你参与规划、设计和实施的大中型数据库管理系统项目,简要说明自己在该项目中的角色、所承担的主要任务及开展的主要工作。论文叙述自己参与设计和实施的数据库管理系统项目应有一定的规模,自己在该项目中担任的主要工作应有一定的分量。
2.异构数据库系统是相关的多个数据库系统的集合,可以实现数据的共享和透明访问,每个数据库系统在加入异构数据库系统之前本身就已经存在,拥有自己的DMBS。异构数据库的各个组成部分具有自身的自治性,在实现数据共享的同时,每个数据库系统仍保有自己的应用特性、完整性控制和安全性控制。异构数据库系统的异构性主要体现在以下几个方面。
(1)计算机体系结构的异构。各个参与的数据库可以分别运行在大型机、小型机、工作站、PC或嵌入式系统中。
(2)基础操作系统的异构。各个数据库系统的基础操作系统可以是UNIX、Windows NT/2000/2003、Linux及Novell NetWare等。
(3)DMBS本身的异构。可以是同为关系型数据库系统的Oracle、SQL Servet等,也可以是不同数据模型的数据库,如关系、模式、层次、网络或面向对象,函数型数据库共同组成一个异构数据库系统。
事实上,在基于Web的电子政务系统中,肯定存在各种不同的操作平台,存在各种各样的数据库系统。而电子政务处理过程中要求能够在异构平台和异构数据库之间,在不同的网络中实现数据交换和业务自动处理。这些必然涉及数据、公文和文档格式的标准化及统一化,需要建立一个能够描述政府部门内部、政府部门间和政府与公众间数据交换和业务处理流程的规范标准,以减少数据在处理过程中因标准不统一而引起的诸多问题。目前,国家电子政务标准已经确定采用XML(可扩展标记语言)为电子公文的标准格式。XML文档具有“可自描述”、“无限嵌套”和“树型结构”等特点。
XML是一种元标记语言,它通过在数据中加入附加信息的方式来描述结构化数据,并允许程序开发人员根据它所提供的规则,制定各种各样的标记语言。在XML中,置标的语法是通过文档类型定义(DTD)来描述的。为了明确各个标记的含义,XML还使用与之相连的样式单(Style Sheet)来向应用程序(比如浏览器)提供如何处理显示的指示说明。一言以蔽之,XML是通过数据文档、IyrD和样式单3个分离的部分来描述数据的。XML具有的一些突出优点表现在以下几个方面。
(1)良好的可扩展性。XML允许各个不同的行业根据自己独特的需要制定自己的一套标记,同时,它并不要求所有浏览器都能处理这成千上万个标记,同样也不要求一个置标语言能够适合各个行业各个领域的应用,这种具体问题具体分析的方法更有助于置标语言的发展。
(2)内容与形式的分离。XML中信息的显示方式已经从信息本身中抽取出来,放在了“样式单”中。这样做便于信息表现方式的修改,便于数据的搜索,也使得XML具有良好的自描述性,能够描述信息本身的含义甚至它们之间的关系。
(3)遵循严格的语法要求。XML不但要求标记配对和嵌套,而且还要求严格遵守DTD的规定。这增加了网页文档的可读性和可维护性,也大大减轻了浏览器开发人员的负担,提高了浏览器的时间空间效率。
(4)便于不同系统之间信息的传输。不同企业、不同部门中往往存在着许多不同的系统,XML可以用做各种不同系统之间的交流媒介,是一种比较理想的网际语言。
基于XML的异构数据访问的核心在于使用XML文档作为数据交换的标准,在客户端只需从Web上接收和发送XML文档,而无须关心服务端如何处理XML文档本身。其可能的体系结构如图5-11所示。
在图5-11中,数据库管理系统(DBMS)层提供数据库的存储和访问,该模块可以是关系型的DBMS、面向对象的DBMS、XML DBMS或者文件系统等。
中间层提供一个Web服务器,可以访问DBMS的数据并使客户端访问数据。中间层选择的技术可以是Web服务器、具有CGI脚本的Web服务器、具有Servlet的Web服务器、具有Java Server Pages的Web服务器,以及具有数据库连接的商用中间层或者应用服务器等。
客户端提供一个用户接口,具有通过中间层的功能。客户端可以是G2G、B2B等其他的应用。客户端技术可以是浏览器、Java Applet或者Java的应用程序等。
【答案解析】