本体构建Protege使用Word格式.docx
《本体构建Protege使用Word格式.docx》由会员分享,可在线阅读,更多相关《本体构建Protege使用Word格式.docx(15页珍藏版)》请在冰豆网上搜索。
04112016
时间
2014年11月20日
Web服务实验报告
本体构建、protege使用
一、实验目的
1.下载Protege,构建本体;
2.新建OWL本体,了解Protege软件下的标签。
二、实验内容
打开Protege软件,构建本体。
在新建的Class类中构建一些关联,可进行查询。
Protege知识支持本体的构建和推理。
1.3种OWL语言简介
OWL网络本体语言(外语全称:
WebOntologyLanguage、外语缩写:
OWL)[
W3C开发的一种网络本体语言,用于对本体进行语义描述。
OWL是由子语言构建的,分别是OWLLite、OWLDL和OWLFull,而且各子语言的表达能力递增。
OWLLite是表达能力最弱的子语言。
它是OWLDL的一个子集,但是通过降低OWLDL中的公理约束,保证了迅速高效的推理。
它支持基数约束,但基数值只能为0或l。
因为OWLLite表达能力较弱,为其开发支持工具要比其他两个子语言容易一些。
OWLLite用于提供给那些仅需要一个分类层次和简单约束的用户[6,7]。
OWLDL(DescriptionLogic,描述逻辑)将可判定推理能力和较强表达能力作为首要目标,而忽略了对RDFS的兼容性。
OWLDL包括了OWL语言的所有语言成分,但使用时必须符合一定的约束,受到一定的限制。
OWLDL提供了描述逻辑的推理功能,描述逻辑是OWL的形式化基础。
OWLFull包含OWL的全部语言成分并取消了OWLDL中的限制,它将RDFS扩展为一个完备的本体语言,支持那些不需要可计算性保证(nocomputationalguarantees)但需要最强表达能力和完全自由的RDFS用户[6]。
在OWLFull中,一个类可以看成是个体的集合,也可以看成是一个个体。
由于OWLFull取消了基数限制中对可传递性质的约束,因此不能保证可判定推理。
2.OWL本体的组成
a、类
OWL类的定义由两部分组成:
引入或引用一个名称,以及一个限制列表。
如下定义:
<
owl:
Classrdf:
ID="
Person"
/>
Male"
Man"
>
rdfs:
subClassOfrdf:
resource="
#Person"
/owl:
Class>
about="
#Man"
#Male"
定义了Person、Man、Male三个类,并且声明了Man是Person和Male的子类。
用抽象语法表示为(Class表示定义一个类,且前者是后者的子类。
OWL所有个体都是类owl:
thing的成员,定义空类用的是owl:
Nothing):
Class(ex:
Personpartialowl:
Thing)
Malepartialowl:
Manpartialowl:
subClassOf(ex:
Man
ex:
Person)
Male)
后两句也可表示为:
partial
Person
Male)
b、个体
除了描述类,本体还要描述类的成员,也就是个体。
在OWLDL和Lite中,个体和类是分离的集合,即一个资源不能同时是个体和类,但在Full中可以。
可用rdf:
type为个体声明多个其所属的类:
Thingrdf:
TOM"
rdf:
typerdf:
Thing>
抽象语法:
Individual)ex:
Tomtype(ex:
Person)type(ex:
male))
c、属性
一个属性是一个二元关系,在OWL中有两个类型的属性:
对象属性和数据类型属性,分别表示类的实例之间的关系和类的实例与文字之间的关系。
对象属性用owl:
ObjectProperty定义,用rdfs:
domain和rdfs:
range表示定义域与值域。
以下定义了一个create属性,它的定义域是Person类,即只有Person类的实例才有这个属性。
ObjectPropertyrdf:
create"
domainrdf:
ObjectProperty>
可以将一个属性定义为某个已有属性的子属性,如定义一个create的子属性createBook,限定该属性值只能是Book类的实例。
createBook"
subPropertyOfrdf:
#create"
<
rangerdf:
#Book"
属性的使用,下例可以推断出DiaryOfTom一定是一本书,即Book类的实例,因为createBook属性的值域是Book。
DiaryOfTom"
Manrdf:
Tom"
createBookrdf:
#DiaryOfTom"
/ex:
Man>
数据类型属性和对象类型的区别在于其值域只能是数据类型。
OWL使用的大部分XMLSchema定义的数据类型。
3、复杂类
OWL提供了一些类构造子用于创建复杂类,如基本的集合操作,即并owl:
unionOf、交owl:
intersectionOf、补owl:
complementOf。
还有owl:
oneOf构造子枚举类的所有实例来定义一个类,还有声明多个类不相交的owl:
disjionWith。
a、集合运算,用交运算作例
intersectionOfrdf:
parseType="
Collection"
<
intersectionOf>
b、枚举类
RGBColor"
oneOfrdf:
#Red"
#Green"
#Blue"
oneOf>
c、匿名类
OWL通过owl:
Restriction定义匿名类,所谓匿名类是通过对其应用的属性约束义的,对应于描述逻辑中通过存在约束、全称约束和关系的基数约束等构造子的概念。
d、复杂类
实现多层嵌套的复杂类定义。
4、属性的特性和约束
正如描述逻辑中的关系可以有可传递、函数和逆关系等特性,OWL属性也可以对其特性进行详细的声明。
还可以对属性取值的基数约束。
三、设计与实现过程
1.下载
下载地址:
http:
//protege.stanford.edu/download/protege/4.3/installanywhere/Web_Installers/
2.安装
3.打开软件
4.打开文本工具,编写如下内容:
5.新建painClass
6.定义排他性关系
7.建立属性
9.限制属性类
四、设计技巧及体会
通过本次实验,学会了使用protege软件进行构建本体,更加一步了解到OWL语言的组成和使用方法。
本次实验,懂得了什么是OWL与OWL的组成和应用,OWL这种表达语言的目的是通过对增加关于那些描述或提供网络内容的资源的信息,从而使网络资源能够更容易地被那些自动进程访问。
而这种作用,让我们更加解决实际问题更加便捷高效。