论文部分内容阅读
随着Internet的迅猛发展,电子商务、远程教育和网络出版等全新领域异军突起,逐渐发展成为互联网世界重要的组成部分,大量的应用基于网络展开。作为一种全新的标记语言,XML以其扩展性、结构性、平台独立性和自描述性等诸多特性逐渐成为网络上数据表示和交换的事实标准,越来越多的应用使用XML来存储、交换和发布信息,大量的XML数据出现在网络上。XML的查询需求与日俱增,多种XML查询语言应运而生,它们旨在抽取、转换和集成XML文档的内容。目前,在众多XML查询语言中,W3C提出的XQuery脱颖而出,已被各方技术联盟及研究机构接受和采纳,极有希望成为XML查询语言的最终标准。因此,大量与XML查询相关的应用将以XQuery为基础展开。
随着XML应用领域的进一步扩大和深入,普通用户对XML的查询需求将会越来越突出。但是对普通的非专业用户而言,直接使用XML查询语言编写程序查询XML是不现实的。因此,为普通用户提供界面友好的XML查询,具有相当大的应用前景和现实意义。
正是基于以上想法,本文设计并实现了一个基于XQuery的XML自动查询系统XQS(XMLAutomaticQuerySystem,以下简称XQS),支持普通用户查询XML数据。使用该系统,用户无需掌握XML查询语言,也不用明确知道待查XML文档的具体结构,仅需在系统提供的用户界面上进行简单的点击或输入操作,就能实现查询要求的设置并最终得到查询结果。在XQS系统的设计与实现中,本文采用Java作为实现语言,以JavaCC为开发工具构建了系统所需的XQuery词法语法分析器,以JDOM技术为基础解析XML文档,结合相应的查询求值算法,实现对XML的查询处理。
在XQS系统的设计中,本文从普通用户查询XML的实际需求出发,力求在用户的易操作性及系统的查询处理功能间保持一个恰当的平衡,尽量简化系统的操作流程以降低对用户的要求,增强了系统的通用性和适用面,这些构成了本文的特色和创新之处。XQS系统较好地支持了普通用户对以数据为中心的XML的查询,它的实现将有助于普通用户直接查询XML,有利于XML的进一步推广。