基于本体的农业数据集成
2009-07-15袁林黄春毅
袁 林 黄春毅
〔摘 要〕本文介绍了本体在数据集成中的作用,借签Wrapper/Mediator架构模式,提出了基于本体的农业数据集成模式,并以一个简单的农业古籍数据集成为例,阐述了此模式的具体应用。
〔关键词〕本体;农业数据;数据集成
〔中图分类号〕TP391 〔文献标识码〕B 〔文章编号〕1008-0821(2009)03-0062-04
随着信息处理技术的发展,农业信息急剧增长,产生了大量不同类型的数据,这些数据以不同形式存放在各个部门的不同应用系统中,而且往往处于采集时的原始状态,具有异构性,包括数据结构异构和语义异构。如何将这些异构数据进行合理有效地集成,成为农业信息共享必需解决的问题。
1 基于本体的农业数据集成模式
语义异构(即语义冲突)包括概念模糊、命名冲突和域冲突。利用本体为特定领域的实体给出名字和描述,使用谓词来表示这些实体之间的关系。通过对概念的严格定义和概念之间的关系来确定概念的精确含义,表示共同认可的、可共享的知识,从而解决语义异构的问题。
在农业数据集成中使用农业本体有以下优势:本体提供了一个丰富的、预定义的词汇库,可作为与数据源的稳定的概念接口,并且独立于数据模式;本体表示的知识足够支持所有相关信息源的转换;本体支持一致的管理和非一致数据的识别等。
本文利用本体在解决语义异构上的优势,研究解决农业数据集成中语义异构的问题,借鉴Wrapper/Mediator架构方式[1],提出适应农业数据的集成模式,如图1所示。
此模式研究包括:农业数据全局本体构建、农业数据局部本体构建、全局本体与局部本体映射,以及局部本体与数据源的映射。本文以一个简单的农业古籍数据集成为例,阐述这一模式在农业数据集成中的具体应用。
2 农业数据全局本体构建
农业数据全局本体的建立主要包括确定本体应用的目的和范围、查找术语(原语),定义全局本体,本体编码,具体步骤如下:
2.1 确定本体应用的目的和范围
应用目的是帮助集成与农业古籍有关数据,方便知识共享。应用范围包括农业古籍相关领域的数据。
2.2 查找术语
这是提取数据集成领域中词汇(术语)的过程。这些词汇用来构建全局本体的概念或者属性。通过了解领域知识,找到该领域中的主要的、关键的概念,并将其提取出来作为全局本体中的词汇,由这些全局的词汇构成公共语义词汇库,作为待集成数据源语义上统一的基准。提取出来的词汇必须是概念明确、无二义性、领域相关度高的词汇。例如:农业古籍相关术语提取如下:农书、出版机构、研究机构、出版活动、研究活动、农史专家、农书作者、姓名、主题、版本等。
2.3 定义全局本体
这个步骤包括3个方面的内容:定义类的等级结构、定义类的属性、定义类之间的关系。
2.3.1 定义类和类等级结构
本文在定义类的等级结构时采用自顶向下的方法,在全局本体中,从顶层出发,分为农书、机构和活动;其中:活动又分为出版活动,研究活动和收藏活动,机构又分为研究机构,出版机构和收藏机构。先创建父概念,再创建其子概念。其类层次结构如如图2所示:
2.3.2 定义类的属性
定义类的属性即是描述这些概念的内部结构。从已创建的术语表中筛选出类后,剩下的大多数术语(除一些个体或实例外)基本上都是这些类的属性。这些属性包括主题、版本等。
2.3.3 定义类之间的关系
关系定义了本体中不同类之间的联系,以及类与数据类型之间的联系。如图2所示:关系对应与图中连接不同的矩形的边,表示不同类之间的联系。
2.4 本体的编码
使得本体能以计算机可以理解的方式表示,从而有效利用本体的语义描述能力。本文采用OWL语言描述本体,使用斯坦福大学的 protégé本体建模工具进行建模。以下是部分OWL文件代码,以及如图3所示的本体图。
agrzbook.owl文件部分内容:
<owl:Class rdf:ID=″AgrzBook″>
<rdfs:subClassOf
rdf:resource=″http:∥www.w3.org/2002/07/owl#Thing″/>
<rdfs:subClassOf>
<owl:Restriction>
<owl:allValuesFrom>
<owl:Class rdf:ID=″Author″/>
</owl:allValuesFrom>
<owl:onProperty>
<owl:ObjectProperty rdf:ID=″has″/>
</owl:onProperty>
</owl:Restriction>
</rdfs:subClassOf>
</owl:Class>
3 农业数据局部本体构建
农业数据局部本体是对农业局部数据源的语义描述。使用局部本体的优势主要体现为以下两点:
每个局部数据源都可能有不同的数据模型,即使相同的数据模型也可能有不同的语义异构问题。通过对局部数据源的分析,将局部数据源的语义信息提取出来,并用形式化的本体建模语言进行描述,通过映射能有效解决同名异义或异名同义等问题。
由于全局本体和局部本体的分离,降低了系统耦合性,使得局部数据源的数据模式的改变不会影响到全局本体,能较快的适应数据源模式频繁改变的情况。
农业古籍数据集成中,预设存在一个数据源S1主要存储收藏机构与农书信息,其对应局部本体如图4所示。
Agrzbook(Name,Version,Count,Cname);(农书的名称、版本、数量和收藏机构名称)
Collector(Cname,Address,Type);(收藏机构名称、地址和类型)
Collect(Cname,Name);(收藏机构名称和农书名称)
同时,存在一个数据源S2主要存储出版机构与农书信息,其对应局部本体如图5所示。
Monograph(Aname,Version,Count,Name);(农书的名称、版本、数量和收藏机构名称)
Publisher(Name,Address,Type);(出版机构名称、地址和类型)
Publish(Name,Aname);(出版机构名称和农书名称)
4 全局本体与局部本体映射
局部本体是全局本体的局部视图,局部本体中的概念和关系在全局本体中可以找到一个对应的语义上相同的概念实体,通过这种映射建立语义上的相关性。
具体映射建立方法可以分为以下步骤:概念的映射、属性的映射和角色的映射。
4.1 概念的映射
通过概念映射解决各个局部数据源的异名同义和同名异义问题。
如局部数据源S1中的Agrzbook和全局本体中的Agrzbook是代表相同的语义概念,则建立起从S1.Agrzbook到Agrzbook的映射关系。如图6所示。
再如数据源S1中用Agrzbook表示农书,而数据源S2中用Monograph表示农书。这两个概念在语义上是相似的,则通过建立S1.Agrzbook到全局本体中的Agrzbook的映射和S2.Monograph到全局本体中的Agrzbook的映射,使得两个不同名字的概念在语义上得到了统一。如图7所示。图6 映射解决异名同义问题
4.2 定义局部本体中的属性到全局本体中的属性的映射关系
映射建立方法和概念的映射类似。
4.3 定义局部本体中的角色和全局本体角色的映射关系
角色是连接概念之间的关系,通过定义每个局部本体中的角色到全局本体中角色的映射关系,使得局部本体和全局本体之间的映射关系不再只是概念之间的对应关系,扩展到路径之间的映射关系。局部本体之间的角色路径对应到了全局本体的角色路径。
5 局部本体与数据源的映射
具体的建立方法如下:
5.1 建立本体中的概念(本体图中的矩形代表的实体)和关系表的映射
即将本体中的概念对应到关系数据库中的表名。
5.2 建立本体中的属性和关系表的映射
即将本体中的属性对应到关系数据库中关系表的具体的字段名。
5.3 局部本体中角色和关系数据库的映射
由于关系数据库中实体之间的关系主要分为一对一、一对多、多对多3种,不同的关系模式通过主键和外键的方式联系起来。对于多对多的实体关系,需要单独构造一个关系表,关系表的主键包含了2个外键,它们分别是关系表联系的两个实体的主键。
数据源S1和数据源S2建立局部本体到数据源的映射如表1和表2所示。
6 结束语
农业资源合理高效利用是农业可持续发展的重要保证,而农业数据共享是农业资源合理高效利用的前提。目前,农业数据的开发利用程度还很低,大量数据处在分散状态,数据之间缺乏统一的标准。本文根据本体在数据集成中的作用,提出了将一种基于本体的数据集成模式应用于农业数据集成中,对当前农业数据集成中遇到的问题提出了一套解决方案。本研究的下一步工作是利用集成的农业数据建立一个基于本体的农业数据检索平台,实现数据共享。
参考文献
[1]李珊,历浩,张炯,等.基于本体的异构数据集成的研究[J].计算机工程与设计,2007,28(6):1460-1462.
[2]曹玲,何琳.农业古籍本体构建与应用[J].广西师范大学学报:自然科学版,2007,(2):1-4.
[3]郑娅峰.异构数据集成的研究与实现[D].西北大学,2005.
[4]冯志勇,李文杰,李晓红.本体论工程及其应用[M].北京:清华大学出版社,2007.
[5]向红.基于本体的异构数据集成系统研究与实现.[D]西安电子科技大学,2007.
[6]谢能付,王文生.农业知识本体构建方法[J].农业网络信息,2007,(8):12-16.
[7]赵菊华.基于本体的水资源数据研究[J].计算机应用,2007,(10):31-33.
[8]贾晖.基于本体映射的异构数据集成中间件HDIM研究[J].现代电子技术,2007,(18):143-145.
[9]常春.联合国农业与粮食组织AOS项目[J].农业图书情报学刊,2003,(2):14-15.