1. Protégé简介及作业说明
简介:由斯坦福大学医学院基于Java语言开发的本体编辑和知识获取软件,它是一个开源软件。Protégé提供了本地概念累,关系,属性和实例的构建,并且屏蔽了具体的本体描述语言,用户只需要在概念层次进行领域本地模型的构建。
作业说明:使用Protégé修改使用D2R导出的RDF文件,添加domain,range, subClassOf, 谓词逻辑等操作。
源文件说明:这里使用到的academic.rdf是使用d2r的rdf-dump工具将一个关系数据库中的数据转换而来的。关于这个数据库更多的信息,可可以参考如下文档:http://www.ibm.com/developerworks/cn/web/1003_zhangjing_d2r/
2. RDF文件的导入与修改
(1)下载并安装Protégé,并使用Protégé打开academic.rdf文件,显示界面如图1所示:
(图1:打开academic.rdf后的protégé工作界面)
(2)subClassOf操作
选择Individuals选项卡,在Class hierarchy界面进行增加子类操作
(图2:为author添加子类chinaAuthor、foreignAuthor)
这里在author类中添加了两个子类,分别为chinaAuthor类和foreignAuthor类。并将indivuduals窗口中的author #1指派为chinaAuthor, author #2和author #3分别指派为foreignAuthor,如图3所示。
(3)domain、range操作
注:这里的domain\range操作其实不是太明白,我的想法应该是domain\range都应该针对的是关系操作,domain指定关系的定义域,range指定关系的值域,换句话说,domain指定关系主语(subject)的所属类,而range指定关系宾语(object)的所属类。在下面的学习中会继续搞清楚这个问题。
因为这个RDF文件是由关系数据库导出的,因此这里针对的是paper2author这个表进行的操作。paper2author指定的是来自author表中的author实例与来自paper表中的实例paper之间的关系。
进入AnnotationProperties,选中paper2author执行相应操作,如图4所示。
(图4:为paper2author添加domain/range)
(4)谓词逻辑操作
先解释下什么是谓词(Predicate):谓词是表示一个个体的性质或若干个体之间关系的词。举个例子来说:晓风热爱技术。这里即构成了一个一元谓词关系。
在OWL中,rdfs:subClassOf, owl:equivalentClass,owl:disjointWith都是谓词。由于在这方面的学习并不深入,这里academic.rdf中添加的谓词逻辑可能并不一定严谨。简单起见,这里为homepagepeople与wikipeople两个类间建立了disjointWith关联,语义为“homepagepeople disjoint with wikipeople”,如图5所示。
(图5:建立disjointWith谓词关联)
3. OWL文件的生成与查看
对于OWL文件,和RDF文件一样,本身亦符合XML规范,因此直接保存为OWL/XML文件,即可得到academic.owl文件。使用记事本打开该文件,查看我们所执行的操作结果,如下面图6、7、8所示。
图6:SubClassOf
图7:Range\Domain
图8:DisjointClasses
4. 参考资料
[1] Protégé 4 userdocumentation, http://protegewiki.stanford.edu/wiki/Protege4UserDocs#Protege-OWL_Editor
[2] A example: Pizzas in 10Minutes, http://protegewiki.stanford.edu/wiki/Protege4Pizzas10Minutes
[3] 谓词逻辑, http://www.doc88.com/p-501548361401.html
[4] OWL Overview, http://www.w3.org/TR/owl-features/