Protege构建本体笔记 本体自动构建

Protege构建本体笔记

Protégé构建本体

1 3种OWL语言

OWL可以分为三种子语言:OWL-Lite,OWL-DL,OWL-Full。子语言的特征是由它的描述能力来分类的。其中,OWL-Lite描述能力最弱,OWL-Full描述能力最强,OWL-DL的能力属于中间,同时,OWL-Full可以视为是OWL-DL的一个扩展。

1.1 OWL-Lite

在语法上,OWL-Lite是最简单的语言。一般用于只有一个简单的类层次和定义的约束比较简单的情况。比如,根据一个现有的百科全书建立的本体。

1.2 OWL-DL

OWL-DL是建立在描述逻辑基础上的的,描述能力比OWL-Lite强得多。描述逻辑是第一顺序逻辑的决定性部分,可以进行自动推理。因此,可以自动的计算分类层次,并且检查本体的一致性。

1.3 OWL-Full

OWL-Full的表达能力是最强的。OWL-Full可以适用于需要很强的表达能力的情况。

2 OWL本体的组成

OWL本体由个体、关联和类组成,三者分别和实例(Instances)、扩展连接点(Slot)、类(Classes)相通信。

2.1 个体(Individuals)

个体就是在领域中,我们所感兴趣的物体。Protégé和OWL之间有一个显著的区别,就是OWL没有独立名字假定(Unique Name Assumption, UNA)。这意味着两个不同的名字可以指向同一个个体。个体就是我们常说的实例,个体可以被理解为“类的实例”。

2.2 关联(Properties)

关联指的是两个个体之间的二元关系,比如,一个关联可以把两个个体连接在一起。

例:关联hasSibling,因为Matthew和Gemma是两兄弟,就可以通过hasSibling这个关系把Matthew和Gemma连在了一起,

关联也可以只有一个参数,如使某种功能化的关联,如transitive(传递)或symmetric(对称)。

在Protégé中,关联基本和扩展连接点(Slot)的意思是一致的。在描述逻辑中,扩展连接点是一个角色,在UML中是关系,也可以是指向其他物体的概念。在GRAIL(另一种本体语言)和其他的形式化语言中,也被称作属性。

2.3 类(Classes)

OWL类是一组包含了个体的集合。它是通过使用形式化的数学语言,精确描述类成员的特性。比如,类Cat包括了特定领域中所有包括“猫”的类。类由超类(superclass)和子类(subclass)的层次结构分类构成,也被称作taxonomy。子类是超类的细化,子类可以继承超类的性质,也就是说,超类的条件是形成子类的必要条件。同时超类-子类关系式OWL-DL的关键特性之一,这可以为推理机自动调用。

同时,概念(concept)一词也类中也时有出现,类是表述概念的基础。

建立一个OWL类,就是建立一个说明类的环境的描述,这个环境首先必须满足描述此类的一个个体成员的要求。

3 OWL本体的构建

3.1 建立类

3.1.1 一个类层次(class hierarchy)也被称之为一个分类法(taxonomy)。

3.1.2 不相交类(disjoint class)

不相交类的定义是,一个个体(或事物)不可能成为多个(>1)类的实例。

子类(subclass)

3.2 建立关联(properties)

关联的作用是表示两个个体之间的关系。关联主要分为两种:事物关联(object properties)和数据类型关联(datatype properties)。

事物关联连接两个个体。数据类型关联连接一个个体和一个XML Schema 数据类型值(XML Schema Datatype value)或RDF描述(RDF literal)。OWL也有第三种关联,称为注释关联(Annotation properties),注释关联可以向类、个体或者事物/数据类型关联里添加信息(元数据)

3.2.1 逆关联(Inverse Properties)

每个事物关联都可能有一个逆关联。如果一个关联连接个体a和b,那么它的逆关联就将连接b和a。比如关联hasChild就是关联hasParent的逆关联

3.2.2 OWL关联的特征(OWL Property Characteristics)

3.2.3 功能性关联(Functional Properties)

具有某种特定功能的关联。最常见的是,通过一个关联,将两个个体连接在一起。

3.2.4 反向功能关联(Inverse Functional Properties)

3.2.5 传递关联(Transitive Properties)

若一个关联是传递的,那么如果关联P关联了a和b,且P也关联了b和c,那么,可以推知,P也可以关联a和c。

3.2.6 对称关联(Symmetric Properties)

若关联P是对称的,P关联了个体a和b,那么P同样可以关联a和b。

3.3 关联的定义域和值域

关联把个体从定义域连接到值域。例子……

在关联P中,把个体从定义域a连接到值域b。那么在它的反向关联P’中,定义域就是b,值域是a,就是把个体从定义域b连接到值域a。

3.4 描述和定义类

3.4.1 关联约束

OWL关联的作用是定义约束,约束的作用是限制归属类的个体,OWL中的约束主要有三种:

? 计量约束(Quantifier Restrictions)

? 基数约束(Cardinality Restrictions)

? 赋值约束(hasVaule Restrictions)

首先我们来看计量约束:

? 存在约束(existential restrictions ])

? 任意约束(universal restrictions ∨)

例如,约束 ]hasTopping MozzarellaTopping表示存在一个个体中类或者集合,其中至少有一个个体含有MozzarellaTopping。事实上,约束所描述的是一个佚名的类,这个类包含的个体满足这个约束。当约束描述一个类的时候,它事实上也描述了(限定)这个类的超类,比如,MargheritaPizza是一个事物的子类,那么Pizza也至少含有一个满足MozzarellaTopping的子类。

3.4.2 存在约束

在OWL本体中,存在约束是最常用的约束。存在约束定义了,存在一个特定类的个体,满足一个给定的关联关系。

例如,]hasBase PizzaBase描述了在所有的个体中,至少有一个个体,满足在hasBase关联中,与类PizzaBase的一个个体相连接。

3.5 使用推理机

前面谈到OWL有3种子语言:OWL-Lite,OWL-DL(Description Logics)和OWL-Full。本体的一个主要特征就是可以被OWL-DL语言所描述,并被推理机所运行。

推理机的一个主要服务就是测试一个类是否是其他类的一个子类,测试的结果被放在Protégé的inferred ontology class hierarchy中。

推理机提供的另一个标准服务是一致性检查,推理机给予类的描述可以确定,类是否可能拥有实例,当类被认为是不可能实例化的,类就是不一致的,比如与其他的类(如父类)的定义相冲突。

3.5.1 使用RACER

首先,本体的推理是通过Protégé-OWL的DIG接口进行的,首先要安装完整的RACER机,并且打开它。Protégé默认的推理机URL是http://localhost:8080,如果要使用其他的推理端口,就要在Protégé的OWL Preferences Dialog中设置它。

3.5.2 调用RACER
Protege构建本体笔记 本体自动构建

完成了RACER或者其他的推理机的设置以后,本体会“自动的”发送到推理机,自动计算分类层次,并且检查本体的逻辑完整性。Protégé中,手动建立的类层次叫做“asserted hierarchy”,通过推理过后生成的类层次叫做“inferred hierarchy”。

3.6 必要和充分条件(Necessary And Sufficient Conditions)

目前,我们创建的所有类,都只用了必要条件来描述。必要条件就是,如果某个个体是一个类的成员,那么它必须满足的条件。换句话说,就是如果某个个体满足这些条件,那么它一定是这个类的成员。

如果一个类只有必要条件,我们称之为简单类(Primitive Class)。

如果一个类至少含有一组充分必要条件,我们称之为规范类(Defined Class)。

如果一个类只有必要条件,也可称之为部分类(Partial Class),如果一个类至少含有一组充分必要条件,就可以成为完整类(Complete Class)。

如果类A有一个必要条件,我们就可以说如果一个个体是类A的成员,它一定满足该条件。但是我们不能说任意满足这个条件的个体一定是类A的成员。

如果类A是规范的,有一个充分必要条件,我们可以说,如果某个个体满足这个条件,这个个体就是A的成员;且任意一个满足这个条件的个体,都一定是类A的成员,这个条件不仅对A的成员是必要的,也是充分的,因此,满足此条件的个体,一定是A的成员。

简单类和规范类(Primitive And Defined Classes)

至少有一组充分必要条件的类就是规范类,我们可以定义,任何一个满足这个定义的个体都是这个类的成员。只有一个必要条件的类是简单类。

3.7 自动分类

使用OWL-DL子语言可以自动的对本体的类层次进行分类,当建立一个很大的本体时,我们可以通过推理机计算子类-超类之间的关系,从而提高一个大规模本体的可维护性,保持其处于一个逻辑上的正确状态。当一个本体的类有很多的超类的时候,最好的办法就是把类层次关系构建成为一个树的结构。因此,在asserted hierarchy中(人工构建的层次)的类不能有多个超类。计算和维护复杂的类关系是推理机的主要功能,通过推理计算,使类之间的关系保持一个可维护和标准的状态。这不仅提高了本体的可重用性,也把维护复杂层次关系时的人工错误降到了最低。

3.8 任意约束(universal restrictions)

任意约束限制了在一个给定的关联关系中,和某一个个体相连接的一个特定类的所有成员;该约束所包括的是符合这一条件的所有成员,而不是特定成员。

任意约束和存在约束的区别在于,在一个给定的关联中,任意约束不是指定一个关系的存在,它仅仅表示,如果一个关联关系存在,其关联的个体一定是特定类的所有成员。

3.9 自动分类和开放世界推理(Automatic Classification and Open World Reasoning)

3.9.1 闭合公理(Closure Axioms)

关联的闭合公理由一个任意约束构成,表示只能被特定的参数所填充的关联关系。此约束有一个参数集,该参数集是所有该关联的存在约束参数的并集。

例如,对MargheritalPizza而言,hasTopping的闭合公理是关联hasTopping的任意约束,其参数是MozzarellaTopping和TomatoTopping的并集,就是∨hasTopping (MozzarellaTopping∪TomatoTopping)。

3.10 值分割(Value Partitions)

值分割不是OWL的一部分,也不是其他本体语言的内容,而是一种设计模式(design pattern),其作用是用于改进对类的描述。在本体设计中,设计模式的作用类似于在面向对象程序设计中——对一个模式化的问题可以重复使用的解决方案。这些设计模式通常由专家设计,其正确性经过证明,可以解决一般的模式化问题。

比如,创建一个“SpicinessValuePartition”的值分割,用于描述PizzaTopping的香味,值分割限定了一个可能值范围的一个详细列表,其中枚举出所有可能值。比如,在SpicinessValuePartition中限定范围为“Mild”,“Medium”,“Hot”。

3.10.1 覆盖公理(Covering Axioms)

覆盖公理包括两部分,被覆盖的类和形成覆盖的类。

例如,我们有类A、B和C,类B和C是A的子类。假设A被B和C所覆盖,这意味着A的成员必须是B和/或C的成员。如果B和C是不相交(disjoint)的,A的成员必须是B或者C的成员。

3.11 基数约束(Cardinality Restrictions)

OWL中,我们可以描述与其他个体或者数据类型有关系的类的个体的至少、至多或者准确的数目。这个描述的约束就是基数约束。对于一个给定的关联P,最小基数约束定义了可以加入P关系的个体的最小数目;最大基数约束确定了这个最大数目;也可以确定可以加入P关系的个体的准确个数。

4 开放世界推理(Open World Reasoning)

这一章说明了开放世界推理的细节。

? :非符号

5 在Protégé-OWL中建立其他OWL结构

5.1 建立个体

OWL可以定义个体且维护他们的关联。个体可以使用在类描述,也就是在hasValue约束和可数的类中。

5.2 hasValue约束(hasValue Restrictions)

hasValue约束用符号∈(此符号需要反过来)表示,表示了一个个体集有至少一个特定关联关系的个体。

例如,有hasValue约束 hasCountryOfOrigin∈Italy(Italy是一个个体),表示了一个个体集(一组个体的任意类),和个体Italy至少有一个hasCountryOfOrigin关联关系。

如果我们要表示MozzarellaTopping是来自Italy的,在pizza本体中有多个国家(包括Italy)个体,我们就可以在MozzarellaTopping的hasValue约束中定义这个关系。

5.3 可数类(Enumerated Classes)

在描述类的时候,除了可以直接命名超类和通过约束定义佚名的超类的时候,也可以通过列举类的成员个体的形式定义超类。如,我们可以通过列举类DaysOfTheWeek的个体{Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday}来定义一个可数类。

5.4 注释关联(Annotation Properties)

OWL允许类、关联、个体和本体本身(技术上讲是本体的头文件)可以通过添加信息或者元数据来进行注释。这些信息片段可以成为审计(auditing)和编辑的信息。比如,创建日期、作者、资源的引用灯信息,OWL-Full对注释关联的应用没有任何的限制,但是OWL-DL对此有所限制,主要是:

? 注释关联的参数必须是可读数据(data literal)、URI引用或者个体。

? 注释关联不能用在关联公理中(property axioms)——例如,不能用在关联层次中,因此这个关联不能含有子关联,也不能是其他关联的子关联。同样,注释关联也要有定义域和值域。

OWL有五种头定义(pre-defined)的注释关联,用于注释类(包括任意类,比如约束)、关联和个体。具体略P98

5.5 充分必要条件的多重集合(Multiple Sets Of Necessary & Sufficient Conditions)

在OWL中,可能有多个充分必要条件的集合。

6 其他

6.1 语言概述

6.2 名字空间(Namespace)

每个本体都有一个名字空间—被称之为默认名字空间,本体也可以使用别的名字空间。一个名字空间是一串类、关联、个体前缀的字符,用于标识本体。通过获得不同本体的不同的名字空间,使一个本体引用另一个本体中的类成为可能。例如,一个本体要引用类owl:Thing,其名字空间就是:http://www.w3.org/2002/07/owl#。为了保证名字空间的唯一性,其唯一资源标识(Unique Resource Identifiers,URI)须以“/”或者“#”结尾。

名字空间的作用是在本体引用其他本体的类、关联和个体的时候避免名字冲突。比如,在本体AircraftOntology中有一个类Wing,另一个本体BirdOntology中也有一个类Wing。AircraftOntology的名字空间是http://www.ontologies.com/aircraft#,BirdOntology的名字空间是http://www.birds.com/ontologies/BirdOntology#。很显然,AircraftOntology中的类Wing不同于BirdOntology中的类Wing,假设把AircraftOntology引入到BirdOntology中,AircraftOntology中的Wing的全名就是http://www.ontologies.com/aircraft#Wing。BirdOntology中的Wing的全名是http://www.birds.com/ontologies/BirdOntology#Wing。这样,AircraftOntology和BirdOntology类之间就没有名字冲突了。

同时,我们可以通过使用一个名字空间前缀来使名字空间更加简化,比如可以使用“ac”来代表AircraftOntology的名字空间http://www.ontologies.com/aircraft#;使用“bird”来代表BirdOntology的名字空间http://www.birds.com/ontologies/BirdOntology#。简化后的类全名如ac:Wing或者bird:Wing。

6.3 本体的引入

本体的引入就会涉及到名字空间的使用问题。在引入本体时,必须同时引入它的名字空间,建立名字空间的前缀。在往Protégé-OWL中引入本体时,我们必须首先定位本体,确定本体的URL。

可选的位置(Alternative Locations)

在引入一个本体时,名字空间URI会转换成为URL(例如,从一个指针到一个物理地址),因而能找到该本体。但是,当这个本体没有名字空间URI或者没有网络连接时,我们可以在Protégé中定义一个可选的位置,用于表示该本体的本地的拷贝。

6.4 Protégé-OWL元数据本体

Protégé-OWL很多的功能性插件都依赖于Protégé-OWL的注释关联。包括Protégé-OWL的元数据本体。

6.5 本体测试(Ontology Test)

Protégé-OWL提供了一个测试框架,包括了对本体编辑的若干测试方案。测试的范围,包括健壮性检查,比如检查关联的参数是否与其逆关联的参数相一致。OWL-DL检查,用于寻找元类(metaclasses)结构,使本体进化成为OWL-Full。

  

爱华网本文地址 » http://www.413yy.cn/a/25101011/58759.html

更多阅读

如何构建和谐高效课堂 如何构建高效课堂教学

课堂教学是提高学校教育教学质量的核心所在,构建和谐高效的课堂教学机制,是我们每个教育教学工作者面临的一个基本课题。如何最大限度地发挥课堂教学的主阵地作用,大面积提高教育教学质量。如何才能构建真正和谐高效的数学课堂呢?针对数

谷歌GA工具网址构建器 谷歌网址构建

在进行网站推广的时候难免要经常做些网络营销、广告投放等相关的活动,那么我们怎么去统计跟踪我们所投放的广告或是营销活动的效果呢?谷歌GoogleAnalytics(分析)可以很好的帮助你了解到哪些营销活动是成功的。谷歌ga通过对在线广告进行

构建服务型国税 在云端构建公共服务型智慧城市

      十八大的召开进一步确认了群众路线是党的核心执政理念:一切依靠群众,群众利益高于一切,从群众中来、到群众中去。十八届三中全会,进一步细化成为“创新社会治理、提供均等化社会服务”的具体任务。这就为后续政府部门向社会提

构建高效课堂心得体会 构建小学数学高效课堂五措施

      创新能力也称创新精神,是人们从事创造性活动的愿望与态度,是一种用新的思路、新的方法、新的途径解决问题的意愿。学生在数学学习中,只有具有这种意愿,才能善于思考问题、发现问题、提出问题和解决问题,才能也于向书本、向前人

声明:《Protege构建本体笔记 本体自动构建》为网友没有勇气的真相分享!如侵犯到您的合法权益请联系我们删除