论文部分内容阅读
XML不仅可以描述结构化数据,还可以有效描述半结构化,甚至非结构化数据。这使它在Web数据管理上得到了广泛的应用。但另一方面,XML技术在数据管理方面存在明显缺点。我们知道,大多数用户往往只对整个数据库中的某一部分感兴趣,但在XML中并没有类似与RDBS中的外模式的概念。DTD通常被看作是XML数据的模式。XML文档中,通过使用DTD描述了文档中的数据是如何组织存放的。它的功能与RDBS中的模式概念类似。即便如此,在现有的查询技术中也还没有充分利用DTD这一有效的资源,到目前为止,DTD的作用只是为了提供对一个“良构的”XML文档的有效性验证。因此,利用DTD实现不同用户对XML文档的查询处理的要求及简化用户的查询过程也是一条应当重视的有效途径。基于上述认识,论文提出了一个基于DTD语法树表示的XML文档模块化信息查询方案的实现。该方案的主要思想是通过扩展DTD文档,添加标记模块的编码信息,完成对DTD中蕴含的子模式进行提取,从而生成基于子模式的XML查询程序,实现对XML中模块数据的查询。论文主要解决了以下问题:1)首先,针对用户不同查询需求,扩展XML文档的DTD。通过在元素层次上添加扩展标记将DTD中元素组织成多个不同的基本内容模块(BCMs),为不同用户的查询要求构建查询界面,并能方便地在查询界面与BCMs之间构建索引,实现用户查询模式的DTD描述地快速提取。2)完成基于DTD树的XQuery查询的自动生成。本文基于DTD树模型,研究了如何构建DTD树的存储结构,并通过对DTD树的遍历自动生成XQurey FLWR表达式的方法。3)原型系统实现。本文给出了基于扩展的模块化DTD的XML查询的原型系统DBCM-XMLQuery。它利用上述技术,完成了基于BCMs提取的DTD描述的XQuery FLWR表达式的自动生成,验证了方案的技术可行性。与其他的XML信息查询系统相比,这种模块化的查询技术有以下一些优点:1)在Internet上的所有XML文档中检索信息;2)用户可以通过模块化的查询方法能更方便快速地浏览XML文档;3)有效地减少客户端加载数据量,更适合在移动用户和拨号上网用户使用。