基于Silverlight技术的本体编辑器的设计与实现_第1页
基于Silverlight技术的本体编辑器的设计与实现_第2页
基于Silverlight技术的本体编辑器的设计与实现_第3页
基于Silverlight技术的本体编辑器的设计与实现_第4页
基于Silverlight技术的本体编辑器的设计与实现_第5页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、摘要本体的构建离不开工具的支持。随着本体在人工智能、语义网语义互联网、电子商务、信息检索和抽取等领域的广泛应用,本体已经成为现在的一个研究热点,涌现出了许多本体构建工具。选择合适的构建工具对于快速、成功地构建一个本体至关重要。本体编辑工具的多样化和差异化在很大程度上是由知识表示形式与本体描述语言的多样性决定的。各种不同的本体编辑工具各有优势,也都存在一定的问题,缺乏一种占统治地位的,得到领域专家与本体研究者广泛认可的工具。当前本体编辑工具的主要问题是不同构建工具适用的本体描述文件无法兼容;大多数工具以文件形式存储本体内容,只有少数支持数据库存储;大多数编辑工具不支持本体的重用,及分布式开发。本

2、文针对目前本体编辑工具所具有的不足,顺应本体编辑工具的发展趋势介绍了一种基于富客户端的本体编辑器的设计与实现。此系统主要实现了本体的图形化浏览和编辑功能。本文的主要工作如下:Ø 概括介绍了本体论的相关理论以及本体研究的现状,通过对现有本体编辑工具的分析,论述了构建新的本体编辑工具的必要性。Ø 总结分析了目前一些本体编辑工具所采用的本体描述语言,大多数是基于OWL的具有自己特色的本体描述语言。这些描述文件只适用于自身的编辑工具,不同的描述语言无法通用。针对此弊端,概括介绍Web本体描述语言OWL,采用标准本体描述语言来构建本体,具有更为广泛的应用性。Ø 简单介绍了系

3、统开发所需要的技术,包括Silverlight和MVC等。详细介绍系统整体架构的设计以及本体库的构建。Ø 实现了本体的图形化浏览和编辑功能。图形表现更加丰富,图形可以拖动,类图可以展开合起,展开显示类的详细信息,包含属性,各种关系和操作,合起则只显示类的名称信息。实现了多视图地显示,可同时显示图形化的视图和本体源描述文件的视图。本体的编辑功能则包含本体的新建,详细信息的编辑等。关键词:本体,富客户端,OWL,图形化浏览, SilverlightDesign and Implementation of Ontology Editor Based on Silverlight Techn

4、ologyAbstractThe ontology building cant do without the support of tools. The ontology has been a hot research point as the widespread use in many fields, such as artificial intelligence (AI), semanticweb, electroniccommerce, informationretrial and extraction and so on. And a lot of ontology build ou

5、t tools appear. Its very important to choose a suitable tool for quickly and succeedbuildingontology.For the most part,the diversification and differentiation of ontology edit tools are decided by the diversification of knowledge representation and ontology description languages. All kinds of ontolo

6、gy edit tools have their own strengths and certain shortages as well. We are lacking in a predominantly tool which is widely approved by the domain experts and ontology researchers.The main problems of current ontology edit tools are including those the owl description languages used by different to

7、ols are not compatible, and most of the tools store the ontology contents using documents, only few supports database storage and most of the tools dont support ontology reuse and distributed development.On account of the shortages of the present ontology edit tools and conforming to the development

8、 tendency of the tools, this paper is introducing the design and implementation of an ontology editor based on rich client. This system mainly implements the ontology graphic browsing and editsfunctions. The main work of this paper contains:Ø Summarize the related theories of ontology and the c

9、urrent ontology research situation. Then the paper discusses the necessity of creating new ontology edit tool by analyzing the current ontology edit tools.Ø Summarize and analyze the ontology description languages adopted by the current ontology edit tools. Most are ontology description languag

10、es having their own feature based the web ontology language (OWL).These are suitable only to their own ontology edit tools. They arent compatible.On account of this shortage, the paper summarizes the web ontology language. It has wide applicability using standard ontology description language to cre

11、ate ontology.Ø Simple introduce the necessary technology for developing the system, including Silverlight and MVC and so on. Then introduce the whole structure of the system and the ontology database building in detail.Ø Realize the functions of graphic browsing and editing. The graphic ex

12、pression is richer. Users can drag the graphics, unfold and fold the class graphics. When you unfold the class graphic, it shows the details of the class, includingproperties, kinds of relationships and operations. And when you fold the class graphic, it only shows the class name. We also realize th

13、e multi-view browsing. It can show the graphics view and the ontology description document view at the same time. The ontology edit function includes creating and details editing and so on.Keywords: Ontology, Rich client, OWL, Graphic browse, Silverlight目录1绪论1研究背景1本体编辑工具的发展1本文研究意义2本文的组织结构32本体理论技术概述4

14、本体定义4本体在哲学中的定义4本体在信息科学中的定义4本体构成5本体分类6本体的作用与应用8本体的作用8本体的应用93本体描述语言及本体开发工具11传统的本体描述语言11网络本体描述语言12XML&XML Schema123.2.2 RDF&RDF Schema143.2.3 OWL15几种本体描述语言的比较18本体编辑工具183.3.1 Protégé193.3.2 Hozo204系统总体设计22系统的设计目标22系统的总体架构234.2.1 Model的设计23解析器与视图的设计25数据库的设计26系统的功能分析与设计26开发平台与核心技术284.4.1

15、 Microsoft Visual Studio 2008284.4.2 Silverlight技术284.4.3 MVC设计模式304.4.4 Web Service315系统的实现32系统总体模块的设计与实现32服务器端组成32客户端组成33系统各层次间的关系34系统基础模块的设计与实现35本体对象模型的实现35数据库的设计与实现38数据访问层的实现40本体浏览模块的实现445本体概念导航的实现45本体概念图形化显示的实现47本体源文件视图的实现53本体编辑模块的实现546总结与展望58参考文献60致谢62个人简历63在校期间研究成果631绪论随着语义互联网的观念慢慢演化,作为其核心的本体

16、,价值也逐步得到了体现。本体是语义互联网基础结构的主要组成部分,本体技术在自然语言处理,数据库,信息检索,知识表示,知识管理,多代理系统等领域中都将起到重要的作用。在很短的时间内,国内外的本体研究都得到了飞速的发展。目前,本体已经成为计算机科学的一个重要研究课题,越来越多的学者投入到本体的研究中,并取得了诸多研究成果。目前对本体的研究主要集中在本体论工程,本体设计和评估的形式化方法以及本体论的应用。其中本体论工程以及本体设计和评估的形式化方法属于本体论的理论研究的内容。随着对本体研究的深入,学者们提出了许多种本体描述语言,如RDF和RDF-S、OIL、DAML、OWL、KIF、SHOE、XOL

17、、OCML、OntoLingua、CycL、Loom等。为了方便构建本体,在过去的十多年里也提出了许多本体构建工具,从最早的OntoLingua、OntoSaurus、WebOnto,到Protege、WebODE、OntoEdit、HOZO等。本体编辑工具的多样化和差异性在本体理论与应用研究的初始阶段大大推进了本体研究工作的进展,但随着本体研究的深入与各种基于本体的专家系统、检索系统以及机器翻译系统的开发成功,本体工具的这种多样化和差异性会在很大程度上阻碍不同领域知识的联通与异构系统的互操作。并且现有的本体编辑工具存在很多不足之处,例如,不支持协同开发,没有本体库,界面简单,用户体验欠缺等。

18、由此,本体编辑工具的发展趋势应该是可兼容多种基于标准本体描述语言OWL的本体描述文件;界面友好,操作简单,用户体验良好;支持本体的重用和本体的分布式开发;支持本体库的构建。本体编辑工具的发展本体编辑是一项比较庞大的系统工程,需要经历一个复杂的反复过程,包括问题说明、领域知识的获取和分析、概念的设计与领域本体的约束、迭代建设及测试等一系列环节。本体编辑工具从出现至今,取得了很大的进展。早期本体编辑工具采取较普及的用于知识库开发的方法,而目前这种方法已渐渐不用了。本体编辑工具中明确支持特殊的知识工程方法的并不常见,但也存在一些例外,如马德里技术大学开发的WebODE1。另外,对于通用本体的支持力度

19、也有所增强,如WordNet等。随着Web本体语言的不断发展,Web本体编辑工具层出不穷,当前国外许多大学和研究机构正在研究与开发的Web本体编辑工具很多,例如斯坦福大学正在开发的WebProtege。WebProtege相对斯坦福大学之前开发得Protégé2功能类似,只是系统结构不同。到目前为止,本体编辑工具的总数超过了90个,这对于编辑工具来说,是一个相当大的数字。本体编辑工具的多样化和差异化很大程度上是由知识表示形式与本体描述语言的多样性决定的。各种不同的本体构建工具各有各的优势,也都分别存在一定的不足,缺乏一种能得到本体研究者广泛认可,占主导地位的工具。解决这一问

20、题的一个方法就是统一化和标准化本体编辑工具。我们可以预见这种标准化工具所应具有的一些特点:它应该界面友好,易于使用,具有很好的用户体验;具有一定的开放性,能跨平台应用;可以支持多人协作开发本体;具有统一的输入输出标示语言格式,并且这种标示语言应该是Web标准的。本文研究意义本体编辑属于本体工程的一部分,包括本体的建立、修改、重用等工作,由于涉及本体自身的建立方法等相关的知识,本体编辑是一个比较庞大的工程,比如就本体建立而言就比较复杂,它首先需要本体的模型,而领域中本体模型的确立需要领域中相关背景知识的支持,这就需要领域专家的帮助,本体编辑工具不能代替领域专家的角色,但好的工具可以帮助本体快速而

21、有效地建立。针对目前本体编辑工具存在的缺陷,研制开发新的本体编辑工具,是可行的,也是必要的。本文所介绍的基于Silverlight技术的本体编辑工具有以下优点:(1) 采用图形化方式编辑本体,方便易操作。(2) 支持分布式开发,可以多人共同编辑一个本体。(3) 以Web标准的本体描述语言OWL作为本系统的输入输出的标示语言(4) 支持本体库的构建。本文的组织结构全文共由5章组成:第一章 绪论。总结了本体的发展现状以及现存本体编辑工具存在的问题,阐述了课题的研究背景,说明了开发新的本体编辑工具的必要性和紧迫性,并且提出了本课题研究的主要内容和意义。第二章 本体理论技术概述。对本体理论技术进行了介

22、绍和综述。重点介绍了本体的定义、分类、应用、本体编辑工具。第三章 本体描述语言概述。介绍了几种常用的本体描述语言,并对他们的描述能力进行了分析和比较。第四章 系统设计。对基于Silverlight的本体编辑工具进行了功能分析和结构设计,介绍了系统开发平台以及核心技术。第五章 系统实现。详细介绍了系统的信息管理模块、本体浏览模块以及本体编辑模块的实现过程。总结与展望。总结本文的研究成果,指出了系统中不足和不完善的部分,并对将来的工作做了展望。2本体理论技术概述本体定义本体(Ontology)是语义Web层次结构的核心。本体的概念最早出现在哲学的领域。近年来,本体作为一种能够在语义层和知识层上描述

23、信息系统的概念建模工具,广泛应用于知识工程,数字图书馆,信息集成,信息检索等领域。从知识共享的角度看,本体可以看作是感兴趣领域的概念化的明确说明,是对客观存在的概念和关系的一种描述。它将隐藏在分析者头脑或者实现者程序中的概念模型表达出来,大大减少了对问题域中的概念和逻辑关系可能造成的误解。本体在哲学中的定义本体的概念起源于哲学领域,又译做存在论,它是西方哲学特有的一种形态3,最早可推朔到古希腊的柏拉图和亚里士多德,亚里士多德曾经定义本体论为“研究物体的存在的科学”。具体地说是研究物体的分类,也就是说:在什么情况下,一个物体可以被定义为“存在”。笛卡尔在第一哲学沉思集一书正文后附录的“笔者对第二

24、组反驳的答复”最后一部分中对“本体”的定义是:“一件东西,以它为主体直接寄托着、或者以它为依靠存在着某种我们理会到的东西,即我们心里有实在观念的某种特性、性质或属性,就是本体。”本体在信息科学中的定义1993年,美国斯坦福大学知识系统实验室(KSL)的Gruber给出了第一个在信息科学领域广泛接受的Ontology正式定义4:“An Ontology is anexplicit specification of a conceptualization”。Gruber认为:概念化是从特定目的出发对所表达的世界所进行的一种抽象的、简化的观察。每一个知识库、基于知识库的信息系统以及基于知识共享的智能

25、agent都内含一个概念化的世界,或是显式的或是隐式的。本体论是对某一概念化所做的一种显式的解释说明。本体中的对象以及它们之间的关系是通过知识表达语言的词汇来描述的。因此,可以通过定义一套知识表达的专门术语来定义一个本体,以人可以理解的术语描述领域世界的实体、对象、关系以及过程等,并通过形式化的公理来限制和规范这些术语的解释和使用。因此严格地说,本体是一个逻辑理论的陈述性描述。后来,Borst在此基础上,给出了Ontology的另外一种定义5“Ontology是共享概念模型的形式化规范说明”。Studer等对上述两个定义进行了深入的研究,认为Ontology是共享概念模型的明确的形式化规范说明

26、。这包含4层含义6:a) 概念模型(conceptualization),指通过抽象出客观世界中一些现象(Phenomenon)的相关概念而得到的模型。概念模型所表现的含义独立于具体的环境状态。b) 明确(explicit),指所使用的概念及使用这些概念的约束都有明确的定义。c) 形式化(formal),指Ontology是计算机可读的(即能被计算机处理)。d) 共享(share),指Ontology中体现的是共同认可的知识,反映的是相关领域中公认的概念集,即Ontology针对的是团体而非个体的共识。Ontology的目标是捕获相关领域的知识,提供对该领域知识的共同理解,确定该领域内共同认可

27、的词汇,并从不同层次的形式化模式上给出这些词汇(术语)和词汇间相互关系的明确定义。本体构成本体的具体构成,可以用下面的公式形象的描述7:本体=概念+属性+公理+取值+名义其中,概念可以分为两种,原始概念和定义概念。例如:“猫是动物”是原始概念,而“偶数是能被2整除的正整数”则是定义概念。属性是对概念的特征或性质的一种描述。公理是定义在概念和属性上的约束和规则。取值是具体的赋值。名义是无实例的概念或者是用在概念定义中的实例。Perez等人认为可以按分类法来组织本体8,并总结出了本体的五个基本构成元素:概念,关系,函数,公理和实例。为了更好的理解,下面对这五个构成部分进行分析:1) 所谓概念,含义

28、非常广泛,可以指任何事物,如描述,功能,行为等。本体中的这些概念通常构成了一个分类层次。2) 关系,代表了在领域中概念间的相互作用。3) 函数则是一种特殊的关系。在本体中可以自定义函数,例如FatherOf关系就是一个函数,其中FatherOf(x,y),表示y是x的父亲,x可以唯一确定他的父亲是y。4) 公理,代表永真断言,是定义在概念和属性上的约束和规则,例如动物的概念包含了人的概念。5) 实例则是指属于某概念类的基本元素,即某概念所对应的实体。以上两种对本体构成的说法没有本质上的区别。属性和关系,取值和实例从根本上说没有意义上的不同,他们都是相同的形式来描述现实世界。世界存在着对象,从对

29、象中可以抽象出概念。概念具有属性,属性可以进行赋值。概念间存在着不同的关系等。Staab给出了本体学习的层次结构,包括术语,同义词,概念,概念层次,关系,公理和规则层。我们可以借用本体学习的层次结构来表示本体的层次结构。其中,术语可以理解为对象,同义词是指属于间的同义关系,如北京和中国首都。概念可以理解为是同义词的集合,即具有相同属性的对象的集合。概念层次是指概念间的层次关系,可以理解为概念间的包含关系。关系则是指概念间的关系。图2-1为本体学习的层次结构图:图2-1 本体学习的层次结构本体分类本体通常作为用户感兴趣的领域的领域模型,同时还可以用作进行文档统一注释的知识表示语言体系和标准。本体

30、的应用领域不同,其研究的侧重点也会不同。为了更好的研究和构建本体,可以对本体进行简单的分类。分类的标准也有多种,可以根据研究的层次,描述的详细程度,形似化程度以及是否支持推理功能程度等进行分类。根据研究的层次可以将本体分为以下四类:1) 上层本体或通用本体,顶级本体,是指具有普遍意义的客观世界的常识的本体,划分了客观世界实体的不同种类。具有普遍意义的观念在这类本体中得到了体现,如时间,空间,事件等,这些观念不依赖于特定的问题或学科领域。这类本体可以跨学科跨领域应用。2) 领域本体,是特定领域的专业性的本体。所表示的知识是针对特定学科领域的。这类本体提供了关于某个学科领域中的概念以及概念之间的关

31、系,以及该学科领域中的一些重要理论。对特定领域的本体研究现在已涉及多个领域,如医学本体,海洋本体,企业本体等的研究。3) 任务本体,描述的是特定任务或行为中的概念及概念间的关系。任务本体也称作方法本体,主要研究可以共享的问题求解方法,如医学诊断方法,相同的症状可以得出可能的生病根源。任务本体涉及的主要是动态知识,而非静态知识。任务本体中描述的要素主要有:任务数据,任务目标,执行状态等。具体研究的主题包括:通用任务,任务结构,与任务相关的体系结构,推理结构等。4) 应用本体,描述的是依赖于某特定领域和任务的概念及概念间的关系。式涉及问题求解的本体,因此也被称为是问题求解本体。一个应用本体于用来描

32、述专业领域的概念相关联,这些概念是解决问题的方法体系的组成部分。它们明确表示出在特定的解决问题的方法体系中,专业领域概念所起的作用。在这种分类表示中,领域本体和任务本体处于同一层次,均依赖于上层本题应用本体处于最低层,依赖于领域本体和任务本体。下面给出此种本体分类层次图,如图2-2所示:图2-2 本体分类层次从对本体的描述详细程度角度,可以将本体分为参考本体和共享本体。所谓详细程度,是一个相对模糊的概念,是指描述或者刻画建模对象的深度。其中,详细程度高的为参考本体,可以用来保存各种本体的元数据;详细程度低的则为共享本体。根据本体表示的形式化程度,可将本体分为四种类型:1) 高度非形式化,用自然

33、语言表示,结构非常松散,例如概念列表。2) 结构非形式化:用限制的结构化自然语言来表示,能有效地提高本体的清晰度,减少模糊性。3) 半形式化,用半形式化(人工定义的语言)进行表示。目前已有许多研究机构开发制定了这类形式化本体表示语言。4) 严格形式化,所有术语都有形式化的定义,能在某种程度上证明完全性和合理性。从支持推理功能程度的角度,还可以将本体区分为轻量级本体,中级本体和重量级本体。轻量级本体不具备逻辑推理功能;中级本体具有简单的逻辑推理功能,可以识别一阶谓词逻辑的表达式;重量级本体具有复杂的逻辑推理功能,可以识别复杂的二阶谓词表达式,并为更加复杂的推理功能实现了预留接口。本体的作用与应用

34、本体提供了关于概念及概念间关系的词汇集,通过这些词汇集可以对一个领域进行建模。虽然不同的本体之间存在一些差异,但他们之间存在普遍的一致性。从根本上说,本体的作用是为了构建领域模型,提供某一领域的知识共享和重用。本体可应用于许多领域,如电子工程,远程教育,电子商务,语义Web等。本体的作用本体提出的最初目标是实现知识的共享和重用,这也是本体主要作用和研究意义所在。实现领域知识的共享和重用的基础是领域本体9。领域本体提供了一组可共享的,公共的领域概念及概念间的关系。本体的作用可以归纳为以下几点:1) 知识共享,在软件代理间或用户间形成对信息组织结构的相同理解和认识。例如,对若干包含海洋信息的Web

35、站点,如果这些站点共享底层的本体,那么代理服务器就可以提取和集成这些来自不同站点的信息资源。代理软件就可以利用这些集成的信息来回答用户的问题或向用户提供相关的信息。2) 专业领域知识的重用。例如,关于空间的描述,这些描述中包含空间间隔(距离),空间位置(坐标),相关的空间测算等概念。所开发出的详细的通用本体,就可以被其他的专业领域所重用,如军事,航海领域等。构建一个大型的本体,也可以将现有的若干本体进行集成。例如,构建一个海洋本体,便可将已有的海洋生物,海洋气象,海洋化学等已有本体进行集成。还可以重用一个通用的本体框架,如将UNSPSC(Skeleton)10进行扩展和填充,就可以用于其他领域

36、中去。3) 知识的标准化。本体为人们描述目标世界提供了一组通用的词汇,这些通用的词汇是实现知识系统化的基础。通用词汇和知识系统化有利于实现知识的标准化。除了以上提供的这几种作用外,本体还可以通过断言的形式使专业领域中的学术观点和学术假设等变得更加明确。对于那些使用该领域相关知识的新用户,明确的形式化说明专业领域知识,对他们迅速的了解本领域是很有帮助的。本体还可以将专业领域的知识从其他特定的环境中分离出来。例如,用户不必非是IT专家便可以按照规范说明和执行程序来实现检索和查询等相关功能。本体还可用来分析专业领域的知识体系结构。本体的应用本体主要应用于以下三个领域:1) 人或组织间的通信知识共享是

37、本体的核心概念。本体无二义性的概念和术语的描述,提供了一个统一的框架或是规范模型,使得来自不同背景,具有不同观点和目的的人员或组织之间的理解和交流成为了可能,并且保持了语义上的一致性。2) 系统间的互操作性这是本体应用特别重要的一个方面,解决了不同的软件系统间在数据上的交流和协作问题。具体可以细分为三个方面:基于本体共享的信息访问,基于本体的信息检索,基于本体影射的信息访问。3) 软件工程应用于软件系统的设计与实现上,主要表现在可重用性,可靠性以及软件需求规范说明等方面。本体可以通过对系统内部各个功能模块的和它们之间的联系的详细描述达到软件的重用性。本体可以作为需求分析基础上软件设计时的基础,

38、以自动或半自动的方式检查它们之间的一致性,从而提供软件系统的可靠性。同时,在软件开发的规格说明中,本体论通过对需要解决的问题进行描述,可以帮助软件开发人员在需求分析,信息获取中提高明确性,减少分析代价。总之,本体技术目前已广泛应用于很多领域。在网络应用方面,建立门户网站,语义Web,导航检索,网络信息集成等等。著名的项目包括基于网络代理搜索本体的本体(Onto)2Agent),基于本体的分布式半结构化信息获取(Onto broker)和可升级知识集成(SKC)。将本体看作一种新型的分类标准,可以应用于数字图书馆的建立,个性化信息服务,知识表达和知识管理等方面。本体还可用于数据挖掘,等等。3本体

39、描述语言及本体开发工具为了清楚方便的描述本体,需要选择一种形式化的语言,并将面向对象的思想应用其中。本体描述语言需要满足以下几项需求:1.为本体的构建提供建模源语;2.提供标引工具,将本体从自然语言的表达式转化为机器可读的逻辑表达式;3.本体可在不同的系统之间导入导出;4.采用机器可读的形式化表示语言描述本体,能够直接被计算机存储,加工,利用,或在不同的系统之间进行互操作。本体描述语言可以分为传统的本体描述语言和网络环境下的本体描述语言两种。目前本体的描述语言有十几种,传统的本体描述语言主要有KIF,Ontolingua,Loom,OKBC,OCML和CycL等;网络环境下的本体描述语言是基于

40、XML标准开发的语言,主要有SHOE,RDF,RDFS,OWL和OWL+OIL等。传统的本体描述语言传统的本体描述语言是在XML标准出现之前,由各个本体研究小组研究开发出来的。上面所列举的几种描述语言中,Ontolingua,OKBC,OCML是基于框架的,CycL是基于框架和一阶谓词的,Loom是基于描述逻辑的。下面将对其做简单的介绍。KIFKIF11(Knowledge Interchange Format)是由美国斯坦福大学知识系统实验室(KSL)建立的一种基于一阶逻辑的形式语言,用于各种不同计算机程序之间进行知识交换,已经成为建议标准。目前KIF被普遍用在专家系统、数据库和智能代理等领

41、域。OntolinguaOntolingua12是由美国斯坦福大学知识系统实验室(KSL) 开发的一种基于KIF 的本体语言,主要用于本体服务器上浏览、创建、编辑、修改和使用本体,也有一些项目用它作为实现本体的语言。Ontolingua 定义框架本体作为知识表示的基础,支持 3 种本体定义方式:一是KIF 表示;二是使用框架本体的词汇库;三是同时使用上述两种表示方式。Ontolingua 包含KIF 分析器、本体分析工具和一组Ontolingua 转换器,通过Ontolingua 转换器可以将用Ontolingua 表示的本体转换成Prolog 、IDL 、CLIPS 、Loom 、Epiki

42、t 、Algernon 和标准的KIF 等。目前,美国斯坦福大学的本体服务器就是采用On2 tolingua 作为本体表示语言。CycLCycL13是Cyc 系统的描述语言,它是一种体系庞大而非常灵活的知识描述语言,具有很强的表达能力和推理能力。Cyc 是美国的微电子与计算机技术有限公司的研究项目,其目标是开发本体,进行常识推理,Cyc 系统目前已发展成为一个庞大的常识系统,其部分知识本体提供免费使用。CycL 在一阶谓词演算的基础上,扩充了等价推理、缺省推理等功能,而且具备一些二阶谓词演算的能力。在该语言的环境中还配有功能很强的可进行逻辑推理的推理机。此外, CycL 还具有具体化定义(用已

43、有的声明来定义新的声明) 、映射、模式化、操作符、上下文、分离、否定以及防止产生歧义等功能,可以用它很容易地分析复杂的句子。网络本体描述语言网络环境下的本体描述语言是基于XML标准开发的语言。目前语义Web上的本体描述语言主要有XML,RDF,RDFSchema,OWL等。XML&XMLSchemaXML(eXtensible Markup Language),即可扩展标记语言,是一种简单的机器可读文档的规范14。其特点如下:a) 可扩展性(Extensible)可扩展性是XML 的主要特征。XML是一种元标记语言(MetaLanguage),使用标准化的方法来定义其他语言。它为结构文

44、档提供了一个数据格式,并没有深入数据的本身,用户可以定义自己需要的标记。这些标记必须根据某些特定的原理来创建,但是在标记的意义上,具有相当的灵活性。因而,XML的应用范围很广泛,例如电子表格,应用文件格式等。XHTML便是XML对HTML的再定义。b) 标记性(Markup)XML文档中,相应的字符序列描述了文档的内容,这些字符序列描述了文档的逻辑结构和数据布局。XML文档中使用了标签,例如<Ontology>,所以它看上去很像我们熟悉的HTML。下面给出一个描述本体基本信息的XML的例子:<?xmlversion=""encoding="utf

45、-8" ?><Ontologies> <Ontology> <name>Ocean</name> <Version>V1</Version> <creator>LiMing</creator> </Ontology> <Ontology> <name>Family</name> <Version>V2</Version> <creator>XuLing</creator> </Ont

46、ology></Ontologies>XML由三部分组成:DTD(Document Type Definitions,文档类型定义),XSL(eXtensible Stytle Language,可扩展样式语言),XLL(eXtensible Linked Language,可扩展链接语言)。XML有其应用上的优势,也存在一些缺陷。优势表现在它的数据是结构化的,数据与表现是分离的,具有应用健壮性和平台无关性。其缺陷则是没有对数据本身作出解释。上面的例子中的标签人为识别简单易懂,但是它并没有指出数据的语义和用途。所以需要在使用前定义它的词汇表,用途和语义才能交换XML表达的内部

47、数据。为了解决以上缺陷,便需要使用XMLSchema。XMLSchema定义了XML文档的结构15。它是一种描述信息结构的模型,为一类文档建立了一个模式,规范文档中文本和标签的组合形式。DTD提供了对允许的嵌套的子元素,一个元素可能的属性以及一个普通的text段的出现位置等简单结构的规定。XMLSchenma则是DTD的后继,提供了更为丰富的语法结构的定义。XML Schema本身就是一个XML文档,因而它更加容易被计算机和人理解,减少了复杂度。并且,XML Schema非常适合构建对象化信息,为用户提供了自定义对象的能力。包含提供基本类型的定义;支持命名空间,使得对象有了全局标识;还提供了继

48、承,组成等关系用来描述信息结构。但是,XML Schema并没有于指明数据的用途和语义。RDF&RDF SchemaRDF(Resource Description Framework)16,即资源描述框架,是国家标准化组织于1997年提出的Web元数据描述语言标准。它以XML语法为基础,提供了描述网络资源以及资源间的关系的模型和语法格式,来支持网络上的知识交换和知识共享。RDF的基础要素是三种类型的对:c) 资源(Resource),是所有可以用RDF表达式来描述的事物,例如网页,网络应用程序等。资源通常以URI(唯一资源标识)加上一个特定的anchor(锚)ID的形式来表示。d)

49、属性(Property),描述资源具有的某些特性,特征以及关系等。每个属性都有特定的含义和取值范围,以及与其它属性间的关系。e) 声明(Statements),就是某一资源,它所具有的属性,以及具体的属性值组成。声明由三部分组成:主体(subject),谓词(predicate),客体(object)。下面给出一个RDF实例,描述了一个叫LiMing的人创建了一个海洋本体。表3-1一个RDF描述实例OBJECT ATTRIBUTE VALUE Ocean OntologyCreated_byAnonymous_resource# Anonymous_resourcename“LiMing”#

50、Anonymous_resourcesex“Male”还可以将上述实例用一个标记图来表示,如下图所示:图3-2RDF标记图其中椭圆表示资源,箭头表示属性,属性的值则用方框来表示。RDF格式定义的信息,是机器可以理解的,因此支持对网络资源的自动处理和实现网络上的互操作性。但是RDF也存在缺陷,例如它没有变量;只支持字符类型,不支持整型等其他常用数据类型;只有简单属性定义,没有否定,传递和互反等属性;无法表示等价,不相交等关系。RDF是领域无关的,没有定义一个特定领域的语义,因而需要使用其他工具来描述领域相关的语义。RDF Schema的提出,便能解决上述问题。RDF Schema(资源描述框架模

51、式)是基于RDF定义的一种模式定义语言,提供了一种机制来定义领域相关的属性,以及使用具有这些属性的资源类。RDF Schema支持客观世界到抽象世界的映射,为知识共享打下了基础。RDF Schema的基本模型由以下几种元素构成:1) 类层次,包含class定义和subclass-of声明2) 属性层次,包含property和subproperty-of声明3) domain和range声明,用于限制上面类和属性的组合4) type声明,用于声明一个class的实例resource使用这些模型,我们便能定义一个具体领域的知识。例如上面的创建本体的例子,我们可以定义一个RDF Schema,包含两

52、个资源类,Ontology和Creator;两个属性,name和sex;他们的定义域为Creator,值域则为字符类型的值。我们可以使用这个模型来定义Ocean Ontology是Ontology的一个实例,LiMing是Creator的一个实例。RDF Schema的优点在于可扩展性和灵活性,但这也导致了了它的缺陷,处理效率比较低。RDF和RDF Schema的用途很广,可以用于数字图书馆,知识表示,结构化文档以及网络安全等等。OWLOWL(Web Ontology Language)17,即网络本体语言,是W3C提出的一种本体描述语言,可以用来描述Web文档和应用中的内在类和关系。OWL能

53、够明确的描述特定领域内的概念的含义以及这些概念之间的关系,遵循面向对象思想,按照类和属性的形式描述领域知识所包含的结构,也就是说,本体是由类和属性构成的。相对于XML,RDF和RDF Schema,OWL语言具有逻辑描述和推理能力,拥有更多的机制来表达语义。OWL增加了更多的原语来描述类和属性,可以表达多种类之间的关系,集合的基数约束,等价关系,更丰富的属性类型,数据类型和枚举类等。OWL提供了三种表达能力递增的子语言,分别用于不同的实现这和用户团体。这三种子语言分别是OWL Lite,OWL DL和OWL Full。详细描述如下表所示:表3-2OWL的三种子语言子语言描述例子 OWL Lit

54、e表达能力最弱,用于提供给那些只需要一个分类层次和简单约束的用户。例如,虽然支持基数限制,但是只允许基数为0或1。提供支持OWL Lite的工具应该比支持表达能力更强的其他OWL语言更简单,并且从辞典和分类系统转换到OWL Lite更迅速。支持基数(cardinality),基数值为0或1。 OWL DL支持那些需要最强表达能力的推理系统用户,且这个推理系统能够保证计算的完全性和可判定性。它包括了OWL语言的所有成分,但有一定的限制,如类型的分离(一个类不能同时是一个个体或属性,一个属性不能同时是一个个体或类)。OWL DL对应于描述逻辑 (/TR/2004/R

55、EC-owl-guide-20040210/#DescriptionLogics),旨在支持已有的描述逻辑商业处理和具有良好计算性质的推理系统。当一个类是多个类的子类时,它被约束不能是另外一个类的实例。 OWL Full支持那些需要尽管没有可计算性保证,但有最强的表达能力和完全自由的RDF语法的用户。OWL full允许一个本体增加预定义的(RDF、OWL)词汇的含义。这样,不太可能有推理软件能支持对OWL FULL的所有成分的完全推理。一个类可以被同时看为许多个体的一个集合以及本身作为一个个体。在表达能力和推理能力上,每个子语言都是前面的语言的扩展。这些子语言间存在如下关系:1) 每个合法的

56、OWL Lite本体都是一个合法的OWL DL本体;2) 每个合法的OWL DL本体都是一个合法的OWL Full本体;3) 每个有效的OWL Lite结论都是一个有效的OWL DL结论;4) 每个有效的OWL DL结论都是一个有效的OWL Full结论。下面给出一个描述酒的简单信息的OWL本体:类的描述: <owl:Classrdf:ID="Wine"></owl:Class> <owl:Classrdf:ID="WhiteWine"> <owl:intersectionOfrdf:parseType=&quo

57、t;Collection"> <owl:Classrdf:about="#Wine" /> <owl:Restriction> <owl:onPropertyrdf:resource="#hasColor" /> <owl:hasValuerdf:resource="#White" /> </owl:Restriction> </owl:intersectionOf></owl:Class><owl:Classrdf:ID=&qu

58、ot;Region" /><owl:Classrdf:ID="VintageYear" />属性的描述:<owl:ObjectPropertyrdf:ID="locatedIn"> <rdf:typerdf:resource="/2002/07/owl#TransitiveProperty" /> <rdfs:domainrdf:resource="/2002/07/owl#Thing" /&g

59、t; <rdfs:rangerdf:resource="#Region" /></owl:ObjectProperty><owl:DatatypePropertyrdf:ID="yearValue"> <rdfs:domainrdf:resource="#VintageYear" /> <rdfs:rangerdf:resource="/2001/XMLSchema#positiveInteger" /> </owl:DatatypeProperty>个体的描述: <VintageYearrdf:ID="Year1998"> <yearValuerdf:datatype="/2001/XMLSchema#positiveInteger"> 1998</yearValue></VintageYear&g

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论