没有合适的资源?快使用搜索试试~ 我知道了~
理论计算机科学电子笔记150(2006)87-102www.elsevier.com/locate/entcsContortion:一种语义语义查询处理器Rub'enTous1部门Pompeu Fabra(UPF)西班牙巴塞罗那海梅·德尔加多2部门Pompeu Fabra(UPF)西班牙巴塞罗那摘要本文描述了Contorsion的体系结构,它是一个语义XML处理器,作用于XML的RDF映射。它有助于最近的一个研究趋势,即定义一个XML到RDF的映射,允许XML文档在语义级别上互操作。我们使用模型映射的方法来表示RDF中的XML和XML模式的实例。与通常的结构映射方法相比,这种表示保留了节点顺序。处理器可以被提供无限的XML模式和/或RDFS/OWL本体集。 这些查询是通过考虑到模式和本体中描述的结构和语义联系。这样的行为,模式意识和语义集成,可以是有用的利用模式和本体层次结构的查询。关键词:数据互操作,语义集成,XML,XML,RDF,本体,OWL1介绍1.1动机通常,涉及XML文档的应用程序定义或重用一个或多个XML模式。这些模式主要用于实例有效性1电子邮件:ruben. upf.edu2电子邮件:jaime. upf.edu1571-0661 © 2006 Elsevier B. V.在CC BY-NC-ND许可下开放访问。doi:10.1016/j.entcs.2005.11.03688R. Tous,J.Delgado/Electronic Notes in Theoretical Computer Science 150(2006)87check.然而,有时需要考虑模式中定义的继承层次结构用于其他目的,例如,当评估查询或条件时,这些查询或条件可以引用数据中不直接存在的概念,但通过继承链与它们相关。今天,使用RDFS/OWL本体来定义应用概念之间的语义连接也变得越来越普遍。 所有这些结构和语义知识对于开发人员来说都很难访问,因为需要特殊的处理,比如为模式定义多个额外的查询,或者使用复杂的RDF工具来访问本体信息。为了克服这种情况,在这里,我们提出了一个架构感知和本体感知的XML的RDF映射的XML处理器的行为将XML文档转换为RDF允许从描述逻辑的强大描述工具(在RDFS和OWL结构中实现)中获利,从而允许XML文档在语义级别上互操作[2]。例如,这允许声明性地定义两个不同XML模式之间的语义连接,或者使XML查询真正具有模式意识。Contorsion XML处理器可以被提供无限的XML模式和/或RDFS/OWL本体。在考虑模式和本体中描述的结构和语义连接的情况下解决查询使用现有的XML处理器来实现相同的结果,我们应该使用继承层次结构中所有可能的名称重写XML查询对于涉及两个或多个名称的查询,我们应该覆盖所有可能的组合,如果我们想考虑未来对模式的更改,所有这些都应该按顺序执行这种解决方案显然是低效的,实现复杂,难以维护,并且让客户端应用程序完成与模式和本体及其特定API交互的任务我们使用模型映射的方法来表示RDF中的XML和XML模式与通常的结构映射方法相比,这种表示保留了节点的顺序,因此它允许所有节点轴的完整映射XML模型定义了一个有序的树,一些类似于跟随兄弟的结构依赖于XML实例的有序性。对节点顺序的兴趣可能因应用程序而异,但是如果没有这个特性,XML到RDF的映射就不能被认为是完整的。1.2相关工作。模型映射与结构映射这项工作的起源可以在试图利用XML到RDF映射的优势的研究趋势中找到[1][2][3][4][5][6][7]。然而,结构映射和模型映射的概念更古老。在2001年,[8]定义了这些术语,以区分绘制结构的作品,R. Tous,J.Delgado/Electronic Notes in Theoretical Computer Science 150(2006)8789一些XML模式映射到一组关系表,以及将XML模型映射到一般关系模式的工作。最近,[4]采用了结构映射方法,并定义了一种将XML文档映射到RDF三元组的直接方法([2]将这种方法归类为直接翻译)。[1]、[2]和[3]也采用结构映射方法,但重点是定义不同XML模式之间的语义映射([2]将自己的方法归类为高级中介)。他们还描述了一些简单的映射机制,以覆盖仅一个子集的XML构造。其他作者如[5]或[6]采取了稍微不同的策略(尽管在结构映射趋势中),并专注于将XML和RDF集成到XML中,将RDF的推理规则([2]归类为编码语义的策略)。最后,2语义数据库处理器的体系结构2.1概述图1概述了处理器的工作原理。关键的问题是XML到RDF的映射,这在其他作品中已经存在,但是我们从模型映射方法中面临。与将某些XML模式的特定结构映射到RDF构造的结构映射方法相反,我们使用RDFS和OWL公理映射XML Infoset [9]。这允许我们表示任何XML文档,没有任何限制,也不会丢失关于节点顺序的信息。我们对XSD使用相同的方法,获得模式的RDF表示。替代OWLFig. 1. 语义可扩展处理器体系结构概述或RDFS本体是直接的,因为它们已经与推理引擎兼容。在图中我们还可以看到,XML模型的OWL表示是必要的。这个本体论允许推理90R. Tous,J.Delgado/Electronic Notes in Theoretical Computer Science 150(2006)87SHIQ引擎来正确处理不同的XML轴,并理解XML元素如何与不同的XSD结构相关联2.2XML模型的OWL本体(XML/RDF本体)我们尝试使用RDFS和OWL公理来表示XML Infoset [9]。在描述逻辑语法(类似风格[15])中对本体的简化描述是:Document±NodeElement±NodeTextNode±NodechildOf±descendantparentOf±ancestorchildOf=parentOf−Trans(ancestor)ancestor±ancestorOrSelfself±descendantOrSelfself±ancestorOrSelfself=sameAsimmediatePrecedingSibling±precedingSiblingimmediateFollowingSibling±followingSiblingimmediatePrecedingSibling=immediateFollowingSibling−Trans(followingSibling)图3以图形方式显示了fig的示例。2将使用OWL定义的类和属性2.3形式语义XML是一种用于对XML文档的各个部分进行寻址的语言。语言可以通过描述这个数据模型上的操作来正式定义。有些公理已经存在于XML/RDF本体中,这并不是巧合,因为它们直接映射到XML原语(例如,child)。首先,我们必须定义函数E,对应于EBNF语法中的XPathExpr规则[10]。E:路径→节点→序列(节点)R. Tous,J.Delgado/Electronic Notes in Theoretical Computer Science 150(2006)8791图二、 描述两部电影的XML简单示例图3.第三章。电影的RDF图示例E [[e1/e2]] x={x2|x1∈E [[e1]]x<$x2∈E [[e2]]x1}E [[a::t]] x={x1|x1∈ A a(x)<$T t(x1)}E [[e [p] x={x1|x1∈E [[e]] x<$P[[p]] x1}函数Aa描述了语法中的ForwardAxis和ReverseAxisAa:→N ode→sequence(N ode)92R. Tous,J.Delgado/Electronic Notes in Theoretical Computer Science 150(2006)87子项(x)={x1|intmaximum(x,x)一个后代(x)={x1|childOf(x1,x)(childOf(x2,x))<$x 1 ∈Adescendant(x2))}Adescendant−or−self(x)={x}<${ x 1 |x 1 ∈ A的后代(x)}父类(x)={x1|public intfindDuplicate(x,x1)}祖先(x)={x1|childOf(x,x1)(childOf(x,x2)<$x1∈Aancestor(x2))}一个祖先−或−自我(x)={x}<${x1|x1∈Aancestor(x)}A preceding−sibling(x)={x1|(x,x){Apreceding(x)={x1 |x1 ∈ Adescendant−or−self(x2)x2∈Apreceding−sibling(x 3)}3号线 ∈Aancestor−or−self(x)}下一个−兄弟(x)={x1|precedingSibling(x,x1)}以下(x)={x1|x1∈Adescendant−or−self(x2)X2 ∈Afollowing−sibling(x3)}<$x3∈Aancestor−or−self(x)}A attribute(x)={x1|attributeOf(x1,x)}一个属性(x)={x1|(x,x){函数T描述了语法中的NodeTest规则T:N ode T est→N ode→BooleanT(x)={true}Tn(x)={hasName(x,n)}Tnode()(x)={type(x,JnodeJ)}Ttext()(x)={type(x,JtextN odeJ)}Telement()(x)={type(x,JelementNodeJ)}函数P描述了语法中的谓词规则。有很多不同的谓词,但定义所有这些都超出了本文的范围。作为一个例子,我们在这里定义了一个谓词,它将特定子树的存在表示为一个条件。P:谓词→节点→布尔R. Tous,J.Delgado/Electronic Notes in Theoretical Computer Science 150(2006)8793P[[p]]x={<$x1∈E[[p]]x}2.4翻译成RDQL每个查询轴可以映射到目标RDQL查询的一个或多个三元组模式类似地,每个节点测试和谓词也可以用一个或多个三重模式映射。输出RDQL查询始终采用以下形式:选择*地点(?v1,rdf:type>,xmloverrdf:document>)[三重模式2][三重模式3]...[三重模式N]使用xmloverrdf FOR翻译可以从非形式语义学推导出来。例如,以下轴描述为:Afollowing(x)={x1 | x1 ∈Adescendant−or−self(x2)X2 ∈Afollowing−sibling(x3)}3号线 ∈Aancestor−or−self(x)}因此,必须将以下轴平移为:(?vi,xmloverrdf:ancestor-or-self>,?vi-1)i=i+ 1(?vi,xmloverrdf:following-sibling>,?vi-1)i=i+ 1(?vi,xmloverrdf:descendant-or-self>,?vi-1)i=i+ 1所有nodeTest和谓词也有简单的转换规则,但我们省略了它们以节省空间。使用的符号包括变量名,如vi和vi-1,其中i以值2开始(因为第一个三元组模式总是与前面所示的相同所以如果我们有这样的表达式:/child::movies/child::movie我们将第一个子轴转换为:(?v2,xmloverrdf:childOf>,?v1)94R. Tous,J.Delgado/Electronic Notes in Theoretical Computer Science 150(2006)87第一个节点测试:(?V2,,http://dmag.upf.edu/xmlrdf/names#movies>)第二个子轴:(?result,xmloverrdf:childOf>,?v2)第二个节点测试:(?result,xmloverrdf:hasName>,)完整的WHERE子句将显示为:哪里(?v1,rdf:type>,xmloverrdf:document>),(?v2,xmloverrdf:childOf>,?v1),(?v2,xmloverrdf:hasName>,),(?result,xmloverrdf:childOf>,?v2),(?result,xmloverrdf:hasName>,http://dmag.upf.edu/xmlrdf/names#movie>)2.5示例结果示例查询可以是:/child::movies/child::movie/child::title(缩写为/movies/movie/title)这被翻译为:选择*地点(?v1,rdf:type>,xmloverrdf:document>),(?v2,xmloverrdf:childOf>,?v1),(?v2,xmloverrdf:hasName>,“movies”),(?v3,xmloverrdf:childOf>,?v2),(?v3,xmloverrdf:hasName>,“movie”),(?result,xmloverrdf:childOf>,?v3),(?result,xmloverrdf:hasName>,“title”)结果:6,9(节点编号,见图)3结合 图式意识R. Tous,J.Delgado/Electronic Notes in Theoretical Computer Science 150(2006)87953.1XML Schema到RDF的映射在我们的XML模型本体中,hasName属性的对象不是文字,而是资源(RDF资源)。这一关键方面允许96R. Tous,J.Delgado/Electronic Notes in Theoretical Computer Science 150(2006)87apply tohasName OWL关系的所有潜力(例如,定义命名关系的本体)。因此,如果我们希望我们的XML处理器是模式感知的,我们只需要将XMLSchema语言转换为RDF,并向XML/RDF XML本体添加必要的OWL结构,使推理引擎能够理解不同XML Schema组件的语义描述逻辑中的附加公理语法(类似SHIQ的样式[15])将是:hasName±from置换组Trans(fromSubstitutionGroup)hasName±from TypeTrans(fromType)fromType±subT ypeOf3.2一个简单的模式感知的XML处理示例下一个例子说明了我们的处理器在一个与模式相关的查询中的行为以这个简单的XML文档为例:<元素名称typeBlade Runner/titulo>1982/estreno><国家>美国/国家>117/duracion><产品介绍我们可以生成一个模式,将不同的名称从西班牙语版本绑定到(主)英语版本。<架构><元素名称<元素名称<复杂类型><元素名称<元素名称<元素名称<元件name='duracion'substitutionGroup='runtime'/>序列><属性名称元素>序列>R. Tous,J.Delgado/Electronic Notes in Theoretical Computer Science 150(2006)8799元素>,xmloverrdf:document>)100R. Tous,J.Delgado/Electronic Notes in Theoretical Computer Science 150(2006)87图四、电影示例的关系版本的RDF表示使用,(?v2,xmloverrdf:childOf>,?v1),(?result,xmloverrdf:descendant>,?v2),(?result,,“title”)xmloverrdfFOR 结果:5、7(节点编号,见图)查询用XML构造表达限制,但是这些构造由推理引擎映射到等效的关系操作。当然,如果我们描述另一种查询语言,例如,SQL与适当的RDQL操作(在关系模型的RDF表示上操作),我们可以直接在XML上执行SQL查询。5.2.3转换增强的RDF数据如果我们想应用这个策略来对自然的RDF数据(不是从XML派生的)执行RDF表达式,我们必须提供一个RDF/RDF表达式(尽管它可能看起来相当多余),因为我们需要用OWL来表达RDF原语,以便能够定义它们和XML/RDF表达式之间的OWL映射然而,这正是RDF重新定义所做的。Reification是将RDF语句视为资源的能力,因此可以对该语句进行断言。RDF将一个具体化的语句表示为具有特定RDF属性和对象的四个语句:由资源R具体化的语句(S,P,O)表示为:R rdf:type rdf:Statement R rdf:subjectSR rdf:谓词P Rrdf:对象OR. Tous,J.Delgado/Electronic Notes in Theoretical Computer Science 150(2006)87101图5显示了一个自然的RDF版本的电影示例。如果我们将模型的所有语句具体化,我们就得到了图6的四元组(图中排除了{x,rdf:type,Statement}我们已经部分绘制了图五、电影的自然RDF表示示例将RDF模型(我们可以称之为RDF/RDF查询)改进为XML/RDF查询,并通过简单的查询获得了令人满意的结果现在如果我们图六、来自电影示例的自然RDF表示的细化语句将以下SQL查询转换为RDQL:/child::movie/child::title我们将获得:选择*地点(?v1,,),(?v2,xmloverrdf:childOf>,?v1),(?v2,,),(?v3,xmloverrdf:childOf>,?v2),102R. Tous,J.Delgado/Electronic Notes in Theoretical Computer Science 150(2006)87(?v3,xmloverrdf:hasValue>,?结果)结果:“巴黎,得克萨斯州”,“里约布拉沃”XML/RDF-RDF/RDF映射仍在进行中,围绕它的讨论克服了本文的范围和物理限制。6结论在本文中,我们已经描述了架构的Contorsion,一个创新的语义XML处理器,作用于RDF映射的XML。该处理器解决的查询,考虑到在用户提供的模式和本体中描述的结构和我们揭示了为什么基于模型映射方法的RDF表示允许保留节点顺序,与通常的结构映射方法相反我们还列出了内部用于将SQL表达式转换为RDQL查询的算法这项工作已经以Java API的形式实现,在线演示可以在http://dmag.upf.edu/上找到。正如我们所展示的,处理器可以用来表达模式感知的查询,处理不同XML语言之间的互操作性,或者将XML与RDF源集成。我们还评估了在另一个数据模型和XML之间定义映射的可能性,以这种方式,从非XML数据上的RDQL表达式获得的RDQL查询可以通过推理来解决我们已经展示了关系模型和RDF的例子(在具体化的帮助下)。引用[1] A. Y. Halevy,Z. G.艾夫斯波克莫克岛Tatarinov:Piazza:语义Web应用程序,第12届国际万维网大会,2003年[2] 克鲁兹岛,小H,许F 基于本体的XML语义集成框架。伊利诺伊大学芝加哥分校。第八届国际数据库工程与应用研讨会。IDEAS'04。2004年7月7日至9日,葡萄牙科英布拉。[3] B.Amann,C.Beeri,I.Fundulaki,and M.Scholl. 基于本体的XML Web资源集成。第一届国际语义网会议论文集(ISWC 2002),第117- 131页,2002年。[4] M.C.A.Klein. 通过RDF模式本体解释XML文档。第13届数据库和专家系统应用国际研讨会(DEXA 2002),第889-894页,2002年。[5] 题名其余部分:A. XML数据的互操作性。第二届国际语义网会议论文集(ICSW 03),2003年。R. Tous,J.Delgado/Electronic Notes in Theoretical Computer Science 150(2006)87103[6] 题名其余部分:P.F. 阴阳网:XML语法和RDF语义。第11届国际万维网会议论文集(WWW2002),第443- 453页,2002。[7] RPath-RDF查询语言建议http://web.sfc.keio.ac.jp/km/rpath-eng/rpath. HTML[8] M. Yoshikawa,T. Amagasa,T. Shimura和S. Uemura,XRel:A Path-Based Approach toStorage and Retrieval of XMLDocuments using Relational Databases,ACM Transactions onInternet Technology,Vol.号11,2001年6月[9] XML信息集(第二版)W3C推荐标准2004年2月4日http://www. w3.org/TR/xml-infoset/[10] XMLPathLanguage(XML)2.0W3CWorkingDraft2004年7月23http://www.w3.org/TR/xpath 20/[11] Jaxen:通用Java编程引擎http://jaxen.org/[12] 耶拿2.语义Web框架http://www.hpl.hp.com/semweb/jena.htm[13] RDQL- 一 种 用 于 RDF W3C 成 员 提 交 的 查 询 语 言 2004 年 1 月 9 日 http : //www.w3.org/Submission/RDQL/[14] 戴夫·雷诺兹。 Jena 2推理支持http://jena.sourceforge.net/inference/[15] 伊恩·霍罗克斯,乌里克·萨特勒,斯蒂芬·托比斯。表达性描述逻辑的实用推理。第六届国际逻辑程序设计与自动推理会议论文集Springer,1999年。
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- 京瓷TASKalfa系列维修手册:安全与操作指南
- 小波变换在视频压缩中的应用
- Microsoft OfficeXP详解:WordXP、ExcelXP和PowerPointXP
- 雀巢在线媒介投放策划:门户网站与广告效果分析
- 用友NC-V56供应链功能升级详解(84页)
- 计算机病毒与防御策略探索
- 企业网NAT技术实践:2022年部署互联网出口策略
- 软件测试面试必备:概念、原则与常见问题解析
- 2022年Windows IIS服务器内外网配置详解与Serv-U FTP服务器安装
- 中国联通:企业级ICT转型与创新实践
- C#图形图像编程深入解析:GDI+与多媒体应用
- Xilinx AXI Interconnect v2.1用户指南
- DIY编程电缆全攻略:接口类型与自制指南
- 电脑维护与硬盘数据恢复指南
- 计算机网络技术专业剖析:人才培养与改革
- 量化多因子指数增强策略:微观视角的实证分析
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功