基于Oracle 11g语义技术的测绘学科分类本体库构建
2015-07-04孙立志徐洪秀天津市测绘院天津300381
孙立志,徐洪秀(天津市测绘院,天津 300381)
基于Oracle 11g语义技术的测绘学科分类本体库构建
孙立志∗,徐洪秀
(天津市测绘院,天津 300381)
摘 要:通过对中国图书馆分类法和中国科学院图书馆图书分类法及测绘学叙词表等相关资料的分析,确定本体中的类和定义类的语义关系,基于Protégé工具构建测绘学科信息公共本体、测绘学科分类—中图法本体及测绘学科分类—科图法本体,在构建的本体基础上基于Oracle 11g语义技术构建测绘学科分类本体库,为进一步语义检索提供基础。
关键词:本体;测绘学科分类本体库;Protégé;Oracle 11g语义技术
1 引 言
随着信息技术的发展,互联网已经成为了人们信息交流和知识共享的基础平台。测绘学作为一门古老的学科,它主要研究地理信息的获取、处理、描述和应用,其研究的范围非常广,相应的图书馆中的书籍范围也很广,内容也很多。在测绘图书资料的检索中加入语义技术,可以通过使用本体来提升计算机的理解数据的能力,从词语所表达的语义层上来认识和处理用户的检索请求,从而可以提高图书资料检索的查准性和检全性[1]。本体作为语义技术的基础,其对信息形式化的表达可以提高信息检索的性能,因此本体库的构建成为语义研究的基础。本体库构建的是否恰当标准会对语义检索起到决定的作用[2]。
随着语义网的发展,众多公司加入到语义技术的研发当中,出现了一批语义产品。在语义网的众多语义产品中,Oracle 11g语义技术引入了业内第一个开放式、可伸缩且安全可靠的语义数据管理平台[3]。TopQuadrant公司的TopBraid语义产品已经与Oracle数据库11g语义技术集成[4]。Oracle Spatial 11g作为Oracle Database 11g企业版的一部分,引入了一种高效的语义数据管理技术,而这种技术在任何其他的商业或者开源的三元存储领域都是最先进的[5]。
2 Oracle 11g语义技术
2007年7月Oracle 11g版本正式发布,基于图标数据模型,可像操作其他对象关系数据类型一样对RDF三元组进行保存、索引及查询。在继承了10g版本中对RDF(Resource Description Framework,资源描述框架)语义支持的同时,进一步扩展了其对RDFS (RDF Schema)、OWL等W3C标准的支持。其特征包括对RDF/ OWL数据和本体的支持,高效执行大数据加载,基于OWL、RDFS和用户定义规则的进行推理,通过SQL用SPARQL语义图模式对RDF/ OWL进行查询,支持虚拟模型,通过Jena Adapter对Java API和SPARQL的支持,用本体辅助通过SQL操作对相关数据进行查询,提高查询、加载和推理的工作性能,能够处理超过10亿的元组等特征。2009年9月Oracle公司发布了期待已久的Oracle 11g Release2,对于Oracle数据库语义技术有了新的突破。在Oracle Spatial 11g Release2中语义数据库有了新的特征,包括用虚拟私人数据库来提供元组文字安全和标签安全的支持,基于流行自然语言工具为文档建立语义索引,用一个RDF图将管理变成表达元组,并行增加推理和优化owl:sameAs,OWL 2 RL/ RDF规则支持,SPARQL过滤器及Union语句等特征[6]。
2.1Oracle 11g语义技术优点
Oracle数据库11g语义技术使企业数据更灵活,其对语义数据模型的管理带来了超越基于文件或特殊的语义数据管理方法,其优势如下[7,8]:
(1)成本低廉:所有语义应用程序都可以与其他应用程序组合并将其部署到企业级数据库中,这样会降低用户使用成本;Oracle支持SOA(Service-Oriented Architecture,面向服务的体系架构),从而使用户在进行web开发时不需要安装和维护桌面客户端软件,也不用将语义数据的存储和管理在企业级数据库外分开。
(2)风险较低:用户可以选择在任何服务器平台上部署应用程序,并使用已有的资源来管理已部署的应用程序。由于RDF和OWL模型以及其他类型的数据可以通过Oracle 11g语义技术直接集成到Oracle数据库企业级管理系统,所以可以提高应用的综合性能、可扩展性能及安全性能。
(3)回报较高:用户可以通过Oracle 11g的RAC技术实现更大数量的用户对应用程序的访问,而只需通过互联网不用增加任何的组织费用。
(4)性能较好:Oracle 11g数据库具备了数据库行业领先的安全性能和可扩展性能,Oracle Spatial 11g作为Oracle 11g企业级数据库的一部分,对于关键任务的语义数据模型也具备这样的性能,其能够管理TB级的RDF数据集,数据集的服务群体范围从几万到数万用户。
(5)开放式结构:一些主流语义软件工具供应商已经宣布对Oracle 11g数据库的RDF/ OWL数据模型的支持,其中包括TopBraid公司[9]。此外,许多主流开源工具提供了与Oracle 11g语义技术集成的插件支持。
2.2Oracle 11g语义技术功能
Oracle数据库语义技术作为Oracle Spatial 11g的一部分,基于RDF/ RDFS/ OWL/ SKOS标准,将语义数据的存储引领到一个开放式、可伸缩的、安全可靠、高效率的对RDF和OWL数据存储的应用平台。图1描述了Oracle 11g的语义功能。这些语义数据库能够对RDF/ OWL数据和本体提供存储、加载并且数据操作语言DML ( Data Manipulation Language),用RDFS、OWL,SKOS和用户定义的规则进行推理,通过SQL用SPARQL图方式对RDF/ OWL及本体进行查询,并且可以用本体辅助查询企业相关数据[10,11]。
图1 Oracle 11g语义功能
3 测绘学科信息公共及分类本体的构建
通过咨询武汉大学图书馆专家得出本体构建所依据的参考资料,对资料进行分析,在基于Protégé工具生成本体。
3.1本体领域的参考资料
中国图书馆分类法,1999年由北京图书馆出版社出版第4版,共分为5个基本部类,下分22个大类,标记采用汉语拼音字母与阿拉伯数字相结合的混合制号码,严格按小数制方式排列。中国图书馆分类法通行中国内地图书馆,几乎全部的中学、小学、大学、研究机构以及出版社都是用中国图书馆分类法。武汉大学图书馆也逐步将正在使用的其他分类方法逐步统一到中国图书馆分类法。本文中将此分类法简称为中图法。中国科学院图书馆图书分类法,1958年由中国科学院图书馆编写,共分5大部25大类,标记采用阿拉伯数字,号码分两部分:大类及其主要类目采用00-99的顺序数字,细分类采用小数制。目前,武汉大学图书馆部分子图书馆还采用的是中国科学院图书馆图书分类的方法进行对图书的划分。本文中将此分类法简称为科图法。
测绘学科叙词表是2000年,全国测绘科技信息网在国家测绘局及总参测绘局的支持下,组织中国测绘科学研究院、原武汉测绘科技大学等单位的有关专家、学者编制的叙词型检索语言工具。该叙词表由字顺表、等级索引表、范畴分类索引表及英汉索引表四部分组成,共收录叙词三千余条。
3.2分析领域资料并基于Protégé工具生成本体
测绘学科信息公共本体以中图法和测绘叙词表为参考资料,测绘学科分类—中图法本体以中图法为参考资料,测绘学科分类—科图法本体以科图法为参考资料。三种本体的类分别来自于相应分类法中的学科概念,本体的层次关系来自于相应分类法中的概念层次关系。由于中图法和科图法范围很大,本文中只选取测绘学科的部分进行研究。
分析相关资料并咨询图书馆专家可以得出,每种分类法概念存在着明显的包含关系,例如:P2测绘学包含P23摄影测量与遥感;两种分类法概念之间存在着映射关系,例如:中图法中的P2测绘学和科图法中的56.1测绘学存在着映射关系;在测绘学科内,学科之间也存在着各种联系,例如:P23摄影测量与遥感与P207测量误差与测量平差存在着联系;通过对中图法和科图法分析可知,分类号是学科概念的唯一标识,可将分类号作为概念的属性分别添加到三个本体中;叙词对用户搜索起到一定的指导作用,可以将叙词按照学科类别添加到测绘学科信息公共本体中;叙词的英文翻译对用户搜索时输入英文关键字起到作用,可以将叙词的英文翻译按照学科类别添加到测绘学科信息公共本体中;作者和出版社信息对于语义检索起到一定的作用,可以通过从图书数据中抽取,推荐给用户使用,可以将抽取得到的信息按照学科类别添加到测绘学科信息公共本体中。
本文本体的描述语言为OWL语言,所以用Protégé工具建立本体最重要的是建立好以下三部分: Individuals、Properties及Classes[12]。Individuals,个体,代表一个领域里面的对象,可以理解成一个类的实例(instances of classes)。在测绘学科信息公共本体中,将叙词表作为所属学科的实例添加到本体中,例如将“中误差”作为“测量误差与测量平差”学科的一个实例添加到本体中。Properties,属性,其真正含义不和面向对象编程语言中的属性一样,它的真正含义是2个个体之间的双重联系,例如“摄影测量与遥感”与“地理信息系统”学科间存在关联关系,可以用have_relate _to表示。Classes,个体的集合,它是一系列概念的语义表达,和编程语言中的类非常相似,有继承体系,每一个学科在本体中为一个类,学科间的包含关系以“子类”表示[13],例如摄影测量与遥感为测绘学的子类。图2为在protégé工具中生成的测绘学科分类—中图法本体结果,从图中左边红框区域可以看出本体的层次结构,其中选择举例的为“摄影测量学与测绘遥感”类,右面分别显示了该类的label属性,即中图法分类号;SuperClasses为它的父概念,此处为“测绘学”;Disjoint classes为它的兄弟概念,表示同一层次上没有任何关系的类。
图2 测绘学科分类—中图法本体
图3 测绘学科分类—中图法本体层次结构图显示
图3给出了基于Protégé OWLViz插件显示的论文中所建立的测绘学科分类—中图法的类的层次结构显示,左边区域为整个本体的效果显示,但由于界面截图大小的限制,将其缩小到可以在一个页面进行截图,然后对某个小区域进行放大得到右面的清晰结构。其中右面的放大区域是左面的类层次结构的一部分,即为红框框住区域的放大显示。
4 基于Oracle 11g语义技术构建测绘学科分类本体库
一个语义库只有一个语义数据网络,但一个语义网络可以有多个语义模型,每个语义模型又对应着一个语义表,本文将构建支持测绘图书检索的语义网络,该网络包括测绘学科信息公共本体(scopea)、测绘学科分类—中图法本体(CLCA)及测绘学科分类—科图法本体(ZLCA)模型。语义模型的构建过程可分为创建存储RDF数据的模型、数据规范化和将语义数据载入模型三个步骤。下面将以测绘学科分类本体(CLCA)为例子来对构建模型的过程进行描述。
4.1创建存储RDF数据的模型
创建存储RDF数据的基础架构和模型,具体步骤为:①创建表空间,用以存储语义网支持;
②创建语义数据网络:SEM_APIS.CREATE_SEM_ NETWORK(tablespace_name),其中表空间名与上步骤创建的表空间匹配;
③创建表空间用于存储用户对象,创建临时表空间用于存储用户临时操作;
④创建用户seruser/ seruser,并授予用户必要的权限(create session,resource);
⑤以上一步骤创建的用户连接数据库,创建语义数据表service_rdf_CLC_data,用以存储CLCA语义模型中的三元组数据;表包括两个字段:id number,triple sdo_rdf_triple_s;
⑥创建语义模型:sem _apis.create _sem _model (model _name,table _name,column _name,model _tablespace);其中model _ name即为模型名,此处为CLCA。table_name为语义数据表名称,为上一步骤创建的语义数据表,column_name为表中的列名,此处为triple。
⑦重复⑤和⑥的操作分别创建语义数据表ZLCA_ TPL和语义模型ZLCA。
⑧重复⑤和⑥的操作分别创建语义数据表SCOPEA_TPL和语义模型scopea。
4.2将Protégé生成的OWL数据规范化并载入模型
采用Jena插件将基于Protégé生成的OWL数据表示成为N-Triple类型的数据。然后将语义数据载入到语义模型,在该本体导入语义库时,采用Oracle 11g提供的Bulk load方法导入。具体步骤为:
①将Jena包解压到本地,然后设置相应的环境变量。
②Protégé建立本体后的表现形式为owl数据,要将其转换为三元组形式。在进入DOS环境执行相应的转换命令,命令为rdfcopy {source}>{ target}, source为要转的owl数据的绝对路径,target为转换成三元组形式的数据的绝对路径。
③以上面创建语义模型步骤中创建的用户来连接数据库。创建临时表Staging table,包括的字段为RDF $ STC_sub RDF $ STC_pred RDF $ STC_obj RDF $ STC _sub_ext RDF $ STC_pred_ext RDF $ STC_obj_ext RDF $ STC_canon_ext;
④授予mdsys对语义数据表service_rdf_CLC_data的插入权限,此外,授予mdsys对stable表的选择、更新权限;
⑤用sqlloader将n-triple数据载入到临时表中,进入DOS环境执行相应的命令,命令为sqlldr userid= seruser/ seruser control=E: df_demosulkload.ctl data =e:all.nt direct =true skip =0 load =1000000 discardmax=0 bad=d0.bad discard =d0.rej log =d0.log errors =10000000;其中userid即为创建语义模型的用户名及密码,data为要载入到语义模型中的三元组数据。
⑥将数据从临时表载入到语义模型。用SEM_APIS.BULK_LOAD_FROM_STAGING_TABLE(model_ name,table_owner,table_name);,其中model_name即为语义模型名称,table_owner为创建语义数据表的用户,table_name为语义数据表的名称。
⑦重复②~⑥步骤,将测绘学科分类—科图法本体数据规范化并载入到语义数据模型中。
⑧重复②~⑥步骤,将测绘学科信息公共本体数据规范化并载入到语义数据模型中。
4.3显示构建成果
采用上述方法,论文中共构建3个语义网模型scopea、CLCA、ZLCA,分别是测绘学科信息公共本体、测绘学科分类—中图法本体、测绘学科分类—科图法本体。已创建的测绘学科本体库结构示意图如图4所示。一个数据库只能构建一个语义网,这里Sem_Net-Work表示已构建的支持测绘图书检索的语义网。语义网里有三个语义网模型,每个语义网模型对应着一个语义数据表。scopea模型对应着SCOPEA_TPL语义数据表,SCOPEA_NS为命名空间表。CLCA模型对应着SERVICE_RDF_CLCA_DATA语义数据表,CLCA _NS为命名空间表。ZLCA模型对应着ZLCA_TPL语义数据表,ZLCA_NS为命名空间表。
图4 测绘学科本体库构建示意图
5 结 语
本文通过对测绘学科分类领域资料的分析,介绍测绘学科本体库的构建方法,并在此基础上基于Oracle 11g语义技术构建测绘学科本体库,为测绘图书语义检索研究提供基础,且该本体库的构建方法可以为其他方面构建本体库提供参考借鉴。
参考文献
[1] 郑任凡.基于本体的语义检索技术研究[D].上海:华东师范大学.2007.
[2] 李宏伟.基于Ontology的地理信息服务研究[D].郑州:解放军信息工程大学,2007.
[3] Murray C.Oracle Database Semantic Technologies Developer’s Guide[EB/ OL].(2009-09-03).http:/ / download.oracle.com/ docs/ cd/ B28359_01/ appdev.111/ b28397.pdf
[4] Quadrant T.Getting Started Guide[EB/ OL].(2007-07-21).http:/ / www.topquadrant.com/ composer/ docs/ TBCGetting-Started-Guide.pdf.
[5] Zhe Wu, George Eadon, Souripriya Das, Eugene Inseok Chong,Vladimir Kolovski,Melliyal Annamalai,Jagannathan Srinivasan.Implementing an Inference Engine for RDFS/ OWL Constructs and User-Defined Rules in Oracle[A].In: 2008 IEEE 24th International Conference on Data Engineering[C].Cancun,Mexico,2008:1239~1242.
[6] Mills Davis.Semantic Wave Report:Industry Roadmap to Web 3.0 & Multibillion Dollar Market Opportunities[EB/ OL].http:/ / www.project10x.com,2010-5-4.
[7] Eric Lai.Oracle’s Semantic technology catching on [EB/ OL].http:/ / www.computerworld.com/ s/ article/9020958/ Oracle_s_semantic_technology_catching_On,2007-5-23.
[8] Zhe Wu.The Semantic Web for Application Developers [EB/ OL].http:/ / download.oracle.com/ otndocs/ tech/ semantic_web/ pdf/ oow2007_semantics_forappdev_k.pdf,2010 -5-3.
[9] The Protégé Project.http:/ / protege.standford.edu/
[10] Xavier Lopez,Souripriya Das.Why,When,and How to Use Oracle Database 11g Semantic Technologies[EB/ OL].http:/ / www.oracle.com/ technology/ tech/ semantic_technologies/ index.html,2008-11-23.
[11] Zhe Wu.Oracle Semantic Technologies Inference Best Practices with RDFS/ OWL[EB/ OL].http:/ / www.oracle.com/ technology/ tech/ semantic_technologies/ pdf/ semantic _ infer_bestprac_wp.pdf,2008-2.
[12] 邓志鸿,唐世渭,张铭等.Ontology研究综述[J].北京大学学报·自然科学版,2002,38(5):730~738.
[13] 肖敏.领域本体的构建方法研究[J].情报杂志,2006 (2):70~71,74.
The Construction of Surveying and Mapping Science Classification Ontology Based on Oracle 11g Semantic Technology
Sun Lizhi,Xu Hongxiu
(Tianjin Institute of Surveying and Mapping,Tianjin 300381,China)
Abstract:Through the analysis of China Library Classification and Classification China Academy Library and the surveying and mapping science thesaurus and other related information,determine the ontology classes and define the semantic relations of ontology classes,build surveying and mapping science information public ontology,surveying and mapping science classification- China Library Classification ontology,surveying and mapping science classification- Classification China Academy Library ontology based on the Protégétools,build surveying and mapping science classification ontology used the construction ontologybased on oracle 11g semantic technology,which provides the basis for further semantic retrieval.
Key words:ontology;surveying and mapping science classification ontology ; protégé;oracle 11g semantic technology
文章编号:1672-8262(2015)05-11-05中图分类号:P20,P208
文献标识码:A
收稿日期:∗2015—05—13
作者简介:孙立志(1986—),男,工程师,硕士,主要从事WebGIS开发等技术工作。
基金项目:国家自然科学基金资助项目(40971243)