语义Web本体语言OWL2研究

2015-06-08 09:58张晓丹张秋霞尚子华
电子设计工程 2015年16期
关键词:数据类型公理本体

张晓丹,李 静,张秋霞,尚子华

(1.黄河科技学院 现代教育技术中心,河南 郑州 450000;2.郑州市煤炭监察执法支队监控科 河南 郑州 450000)

语义网是一种能够理解人类语言的智能网络,语义网的出现不仅使人与电脑之间的交流变得轻松,而且语义网中的计算机还能利用自己的智能软件,在万维网上的海量资源中找到所需要的信息,从而将一个个现存的信息孤岛发展成一个巨大的数据库。近几年来,关于语义网的研究很多,主要集中于对本体的讨论上,包括本体的基本涵义、形式化表示、本体的构建、本体语言以及基于本体的各种理论探讨与试验应用。OWL(Web Ontology Language)是一个本体语言,用于带有形式化定义含义的语义网,本文是在介绍本体语言的基础上,研究OWL2 Web本体语言的新特性及其原理,对本体语言做进一步的研究。

1 本体语言

从W3C到美国和欧盟的科研项目,不同的研究团体针对语义网表达提出了不同的建议和语言,这些语言构成了语义网的基础。

DAML:DAML(DARPA Agent Markup Language)委员会于1999年在美国成立。当时,已被建议为W3C标准语言的RDFS,由于微弱的语义表达能力不能满足DAML的需求,为此,DAML吸取面向对象语言和基于框架的知识表达语言方面的经验扩展了RDFS,形成了新的本体建模语言DAMLONT[1]。

OIL:欧洲信息技术委员会研究设计的本体描述语言OIL(Ontology Inference Layer),将基于框架的本体建模原语、万维网标准语言以及描述逻辑(DL)中简单且定义完好的语义描述部分结合起来,为大多数Ontology中常用的建模原语提供了简单、清楚和定义完备的语义,并提供了自动的推理支持(如类的一致性和包容关系的检查)[2]。

DAML+OIL:DAML+OIL是上述欧美两个组织共同协商的产物,它从描述逻辑入手,建立于W3C组织的标准RDF和RDFS之上,并且以更丰富的建模原语扩展了RDF和RDFS。DAML+OIL的目标是使智能主体(Agent)能够动态地识别和理解信息资源,并以语义方式提供代理之间的互操作[3]。

OWL:W3C组织总结了以上几种语言的开发经验,于2004年2月正式推出了OWL本体语言。图1是本体表示模型和语言关系图[4]。

2 OWL语言

2.1 OWL介绍

图1 本体表示模型和语言关系图Fig.1 Ontology representation model and language diagram

OWL(Ontology Web Language)是 W3C(World Wide Web Consortium)于2004年开发的一种本体语言,即第一版本的OWL本体语言(以下简称为OWL1),用于对本体进行语义描述。对OWL的设计最大的影响是来自DAML+OIL、描述逻辑、框架和 RDF(S),OWL是DAML+OIL的修订版,其语义受到描述逻辑的影响,本体知识的组织方式受到框架的影响,交换语法是基于RDF/XML。另外,OWL1定义了3种子语言,分别是 OWL Lite,OWL DL和 OWL Full。从语法上来说,OWL Lite本体中类的层次结构最简单,只适合用来描述具有简单约束的本体;OWL DL的基础是描述逻辑(Description Logics),可以进行自动推理,表达能力也相应较强;OWL Full是3个语言中表达能力最强的,适合那些需要强大表达能力的场合,但不适用于进行自动推理。

2.2 OWL1的组成

1)类(class):类定义了一组共享某些属性的个体所组成的集合。OWL1中描述类的构词有Class,one Of;描述类运算式 的 构 词 有 valuesOf,intersectionOf,unionOf,complementOf;描述类公理的构词有类存在,subClassOf,equivalectClass以及disjointWith等。

2)属性(Property):属性是个体之间的二元关系,在描述逻辑中,它们就是角色(Role)的概念,用于说明个体之间或个体到数值间的关系。OWL1中有大量的构词用于描述属性,比如 , equivalentProperty,inverseOf,TransitiveProperty,Symmetric Property,FunctionalProperty和 Inverse FunctionalProperty用于描述属性特征;allValuesFrom,someValuesFrom以及hasValue用来约束属性的值域;minCardinality,maxCardinality和Cardinality则是用来约束属性取值的数量。

3)个体(individual):个体是类的实例(Instance),代表领域中我们感兴趣的对象,可以用属性将一个个体与另一个个体关联起来,在OWL1中不使用唯一命名假设,即两个不同的名称可以对应一个个体。OWL1中有3种描述实例约束的构词分别是 sameAs,differentFrom和 allDifferent[5-6]。

2.3 OWL2

OWL2是W3C于2012年提出的,是在OWL1的基础上对OWL本体语言的扩展,并继承了它的语言特性、设计决策和用于OWL1的用例。OWL2在OWL1提供的类、属性、个体及数据值的基础上又添加了一些新的功能,这些新功能中有一些是语法上的改进(例如,“语法糖”,类的不相交并集),其它的则是提供了新的表达能力,包括:键 (keys)、属性链(property chains)、更丰富的数据类型、数据定义域、有条件的基数限制、非对称属性、自反属性和不相交属性、增强的注释能力,增强了对属性的表达能力、对数据类型的扩展支持以及扩展的注释能力。OWL2也定义了3种不同的配置语言:OWL2 EL,OWL2 QL和OWL2 RL,它们是能更好地满足特定的性能需求或者更易于实现的OWL2的语言子集。每种配置语言都定义为“OWL2结构化规范”的一个语法限制,即作为可用于相容本体(conforming ontology)的结构化元素的子集,并且它们都比OWL DL更具有限制性。

3 OWL 2的新功能及基本原理

3.1 语法糖

OWL1提供的disjointWith仅表示两个类之间的两两不相交,OWL2在此基础上提供了语法糖— DisjointUnion和语法糖—DisjointClasses。其中,DisjointUnion表示两两不相交的其他类的集合类,DisjointClasses可表示多个类之间的两两不相交。另外,OWL2提供了 OWl 2:Negative Object Property Assertion和Owl 2:NegativeDataPropertyAssertion用来表明一个给定的对象属性或者数据属性没有被该个体拥有,改进了OWL1仅提供了个体所有的属性值而并未提供一个判断该个体没有某值的概念。OWL2语法糖具体描述与示例如表1所示。

表1 语法糖Tab.1 Syntactic sugar

3.2 属性新结构

OWL 1主要集中于类和个体的信息表达,在属性的表达上存在较少的注意力。OWL 2为属性的额外限制、新特征,不兼容性、属性链和键的表达提供了新的结构。比如,OWL1仅仅限制了属性的实例数,OWL2则在此基础上新添加了基数限制:ObjectMinCardinality、ObjectMaxCardinality、Object Exact Cardinality、DataMinCardinality、DataMaxCardinality、Data Exact Cardinality。 例 如 ,ObjectExactCardinality (1:hasDirectPart:FrontalLobe),表示对象类恰好有 1个 frontal lobe类型的direct part。再如,OWL1没有提供方法将属性定义为其他属性的组合,就像定义“uncle”时需要用到两个或两个以上属性(例如brother和father),因此,不可能将一个属性 (例如locatedIn)与另一个属性 (例如part of)一起传递。在一个SubObjectPropertyOf公理中的OWL2结构Object Property Chain允许将属性定义为若干属性的组合。另外,OWL1没有为定义键提供方法,OWL2结构HasKey允许为给定的类定义键。属性新结构如表2所示。

3.3 扩展数据类型的能力

1)额外数据类型及数据类型限制

DatatypeRestriction(DT F1 lt1...Fn ltn),其中 DT是一个一元数据类型,Fi ltl,1≤i≤n是一对约束 facet和 literal。例如,DataTypeRestriction (xsd:integer minInclusive 18)表示xsd:integer是一个下限为18的数据类型。该特性弥补了OWL1不支持数据类型的任何子集的缺陷。

2)N元数据类型

OWL1无法表示一个对象值之间的关系,例如表示一个正方形是一个长和宽相等的矩形。OWL2包括了n元数据类型所需的语法结构,以为扩展提供了公共基础。例如,DataAllValuesFrom(:admissionTemperature:current Temperature Data Comparison (Arguments (x y)leq (x y)))表 示 一 个adminssionTemperature不大于其currentTemperature的个体。

表2 属性新结构Tab.2 The new structure attributes

3)数据类型定义

针对OWL1只能通过一个类的描述定义一个新类,而不能定义一个新的数据类型的情况,OWL2提供了定义数据类型的新结构:DatatypeDefinition({A}DT DR),其中 DT是一个数据类型,DR是一个数值范围。例如:DatatypeDefinition (:adultAge DatatypeRestriction (xsd:integer minInclusive 18))定义了一个新的数据类型 adultAge:至少18 的 xsd:integer。

4)数据值域组合

OWL1允许类的结合以构建新类,但不适用于数据类型,但OWL2允许这种方法:

DataIntersectionOf ({A}DR1...DRn)其中 DRi,1≤i≤n代表数据范围;

DataUnionOf({A}DR1...DRn);DataComplementOf({A}DR)。

3.4 扩展的注释

OWL2除了允许对本体、实体进行注释外,还允许对匿名个体、公理以及注释本身作注释。

本体实体和匿名个体的注释:AnnotationAssertion({A}AP s v),其中AP是一个注释属性,s是一个IRI或者一个匿名个体,v是一个literal,或者一个IRI,或者一个匿名个体。

公理、注释以及本体的注释:Annotation{A}AP v),其中 AP是一个注释属性,v是一个literal,或者一个 IRI,或者一个匿名个体。

注释属性的子属性:SubAnnotationPropertyOf( {A}AP1AP2),其中AP1和 AP2是注释属性。例如:Sub Annotation Property Of(:narrow_synonym:synonym)中属性:narrow_synonym是:synonym的子属性。

注释属性的定义域:AnnotationPropertyDomain({A}AP U),其中AP是注释属性,U是一个IRI。

注释属性的值域:AnnotationPropertyRange( {A}AP U), 其 中 AP是 注 释 属 性 ,U是 一 个 IRI。 例 如 , 例 子AnnotationPropertyRange(FMA:UWDAID xsd:positiveInteger)表示FMA ID是一个正整数。

3.5 其他创新

在OWL1中,实体可以直接使用而无需预先声明,因此无法保证实体名在不同的公理中都能匹配,如果出现实体名不匹配的情况,没有办法查找错误。在OWL2中引入了实体声明,一个声明意味着实体是本体词汇表的一部分。声明也使实体类别(类、数据类型、对象属性、数据属性、注释属性或个体)与被声明的实体间建立了关联。

1)声明:Declaration(AE),其中 A 是一个注释,E 是一个实体。 例如,例子 Declaration(Class(:Person))表示:Person 被声明为一个类。

2) 顶 层 和 底 部 性 能 :topObjectProperty、bottom Object Property、topDataProperty、bottomDataProperty。

3)IRIs (Internationalized Resource Identifiers):OWL1 中使用的统一资源定位符 (URL)是ASCII的一个子集,而ASCII只包含了英语字母表中的字符,这对于非英语名称有局限性的。因此,OWL2使用了国际化资源标识符(IRI)[RFC3987]来标识本体及其元素。

4)引入和版本:Ontology([O[V]]{Import(O′)}{A}{AX}),其中,[O]和 [V]表示零或一个本体和版本IRIs,{Import(O‘)}表示零或多个引入,O’是一个本体 IRI,{A}是零或多个注释,{AX}是零或多个公理。

5)Anonymous Individuals:相比OWL1中匿名个体作为无标识符的个体引入,OWL2中匿名个体是使用节点ID标识的,并且OWL2中匿名个体的处理与OWL1完全向后兼容。

6)逆属性:通过规避给逆属性命名的需要,OWL2中的属性表达式可以在类表达式中直接使用。例如,OWL1的逆属性公理 ObjectProperty(:hasPart inverse:partOf),在 OWL2中可以用公理 InverseObjectProperties(:hasPart:partOf)表示。

4 结 论

虽然OWL2在OWL1提供的类、属性、个体及数据值的基础上又添加了一些新的功能,增强了对属性的表达能力、对数据类型的扩展支持以及扩展的注释能力,使得Web本体标准语言更加强大,但基于OWL2的本体实际应用还存在许多不足,离建立符合语义网构想的WWW页面或网站还有相当的距离。如何规范与标准本体的编制用以指导中文网络本体的构建,如何建立具有一定实用价值的词汇集(Vocabulary)及推理机制,是当前需要继续深入探索和不断努力实践的任务 。

[1]Horrocks I,van Harmelen F,Patel-Schneider P,et al.The revised language specificat ion-daml+oil[EB/OL].http://www.daml.org/2001/03/daml+oil,2001-06-06.

[2]D.Fensel,I.Horrocks,F.van Harmelen,D.McGuinness and P.Pate-l Schneider.OIL:An Ontology infrastructure for the Semantic web[J].IEEE Intelligent Systems,2001,16:38-45.

[3]Frank van Harmelen,Pater F.Pate-l Schneider,Ina Horrocks.A Mode-l Theoretic Semantics for DAML+OIL ( March 2001).World Wide Web Consortium[EB/OL].http://www.w3.org/TR/2001//NOTE-daml+oil-axioms,2001-12-18.

[4]Pater F.Patel-Schneider, Patrick Hayes,and Ina Horrocks.Owl web ontology Language reference[S].w3c recommendation 10 february 2004,15 December 2004.

[5]王岁花,张晓丹,王越.基于关系数据库的OWL本体存储及查询方法[J].河南师范大学学报:自然科学版,2012,40(2):159-160.WANG Sui-hua,ZHANG Xiao-dan,WANG Yue.OWL ontology storage and query method based on relational database[J].Journal of Henan Normal University:Natural Science Edition,2012,40(2):159-160.

[6]Sean Bechhofer,Frank van Harmelen,Jim Hendler,et al.OWL Web Ontology Language Reference[EB/OL].[2004-02-10].http://www.w3.org/TR/2004/REC-owl-ref-20040210/.

[7]Jie bao,Elisa F.Kendall,Deborah L.Mcguinness,et al.OWL 2 Web Ontology Language Quick Reference Guide[EB/OL].[2009-10-27].http://www.w3.org/TR/2009/REC-owl2-quickreference-20091027/.

[8]Christine Golbreich,Evan K.Wallace.OWL 2 Web Ontology Language New Features and Rationale(Second Edition)[EB/OL].[2012-12-11].http://www.w3.org/TR/owl2-new-features/

猜你喜欢
数据类型公理本体
眼睛是“本体”
如何理解数据结构中的抽象数据类型
欧几里得的公理方法
Abstracts and Key Words
基于本体的机械产品工艺知识表示
基于SeisBase模型的地震勘探成果数据管理系统设计
线上众筹产品的特征分析与研究
公理是什么
数学机械化视野中算法与公理法的辩证统一
专题