基于扩展Query引擎的空间数据流查询方法研究..docVIP

基于扩展Query引擎的空间数据流查询方法研究..doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于扩展Query引擎的空间数据流查询方法研究..doc

基于扩展XQuery引擎的空间数据流查询方 法研究 针对目前XML数据流处理中通常采用的查询语言 XPath和XQuery均不支持空间运算,无法应用到空间数据流 处理技术中的问题,设计了一种通过扩展现有商业化XQuery 引擎功能基础上的空间数据流检索方法。 关键词:可扩展标记语言数据流;XQuery;空间数据 随着Web应用中数据交换越来越频繁,产生了大量不间 断的数据流。由于XML已经成为In ternet环境中数据表示 和交换的标准,数据流大量以XML格式表现。如何从不间断 的XML数据流中匹配、抽取和转换部分数据流以满足商务应 用的需求成为当前国际数据库领域的一个研究热点。目前针 对XML数据流的处理研究有很多,但研究的对象均是普遍意 义上的XML数据流,对于以XML格式表现的空间信息及查询 中需要空间关系运算的数据流处理研究较少。研究如何在目 前的XML数据流处理中支持空间运算有着重要意义。 1存在的问题 在目前针对XML数据流的研究中,其基本思想都是将用 XPath表示的查询表迗式转换为状态树型自动机,处理程序 以流的方式接收并处理XML文档,看其满足哪一个状态节点 的要求以触发查询匹配操作。如果满足所有状态节点的要求 则向用户返回相关的文档或结果[1]。由于XPath表达复杂查 询的局限性,W3C制定了专门针对X ML的查询语言规范 XQuery。XQ uery语言的核心是XPath和FL WOR表达式,复 杂的XQuery查询语句很难用合适的状态机来表达。将XQ uery直接改造成XML数据流的查询语言也引出了大量研究 [2~5]。目前标准的XPath和XQuery规范均不支持空间数据 类型及空间运算,且空间分析功能算法复杂。通过这些规范 自身的数据类型定义和基本函数库来实现复杂空间数据类 型以及空间分析功能的扩展很困难,使得这些研究很难应用 到包含空间运算的数据流查询中。要在XML数据流查询中支 持空间运算,需要先扩展XQue ry规范以支持空间数据操作 函数。自定义实现支持空间运算的XQuery引擎是理想的方 法。文献[6,7]中已提出了直接扩展XQuery以支持空间功 能的方法。但自定义实现XQuery引擎需要完整的词法分析、 语法分析、查询规范化以及翻译执行等,使得这些方法均停 留在理论阶段,很难实际应用。 针对这些问题,本文设计了一种在商业化引擎基础上扩 展XQuery空间功能的方法,然后以事件流处理方式接收XML 文档以实现空间数据流查询的方法。 2XQu ery引擎空间功能的扩展 扩展XQu ery引擎以支持空间运算,除了自定义实现支 持空间运算的XQuery引擎方法外,还可以利用现有的XQuery 引擎进行扩展。目前的商业化XQuery引擎均提供使用外部 函数的功能扩展方法,如目前知名的商业化XQuery引擎 Saxon提供的功能扩展机制可以允许在XQuery查询语句中调 用Java或.NET方法作为外部函数。其使用方法简单,只 需要在XQuery查询语句中声明外部函数所在的名称空间就 可以调用外部方法。这为XQuery引擎实现包括空间分析的 查询提供了便捷的途径。 2. 1空间数据类型的表达方法 采取调用外部方法来扩展XQuery引擎的功能,不可避 免地会产生空间数据作为参数传递的问题。以采用Java语 言实现扩展方法为例。虽然容易用Java对象表迗各种空间 数据类型,但由于XQu ery引擎规范本身不支持直接以Jav a 对象表达的空间数据类型,为了使XQuery语句中支持空间 数据类型并能够使空间数据在Java类和XQuery引擎中传递 需要找到一种合适的空间数据表迗方法。 GML是一个用XMLschema描述的XML语法,用来进行空 间和非空间的地理信息建模、传输和存储。GML已成为Web 应用中所接受并容易理解的一种空间信息的交换格式。由于 GML文档本身也是一个XML文档,可以用DOM对象document 来表迗,在Saxon的XQuery实现中能够支持DOM对象的传 递,采用GML表迗空间数据以支持空间数据在XQuery引擎 与外部Java类之间的传递成为自然的选择。将GML在XQuery 引擎与外部方法之间进行传递,需要引入GML的schema描述。 在GML规范中,定义了抽象地理特征模型,定义了具体的几 何形状信息,提供了点(poi nt)、线(line)、多边形(po lygon)、 点集(multipoi nt)、线集(multiline)和多边形集 (multipolygon)等基本几何图形以及复合类型(comp 1 ex type)的几何图形。在本方法中只用到了空间数据类型的 几何定义,所以引入即可。在XQuery语句中定义如下: importschemana mes

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档