语义网(Semantics Web) 语义网概述 RDF 本体 语义网描述语言.

Slides:



Advertisements
Similar presentations
虚拟天文台天文教育平台建设构想 刘高潮 华中师范大学 国家天文台. 报告索引 虚拟天文台环境下的教育概述 虚拟天文台天文教育平台建设构想 天文历算服务开发示例.
Advertisements

青少年性健康教學資源簡介 台灣性教育學會 主講人:蔡秉兼 桃園市立壽山高級中學健康與護理教師 1.
APEX数据和知识管理实验室简介 上海交通大学 计算机科学与工程系.
Chapter 5: Service-Oriented Architectures for Distributed Computing 面向服务的分布式体系结构 1.
『新年』談『新』 "New Year" to Talk About "New"
国际数据标准发展趋势及典型案例分析 东北石油大学 袁满 2015年7月23日.
第二章 知识与知识表示 第一节 引言 一、知识 知识是信息经过加工整理、解释、挑选和改造而成的。 二、知识类型 1、事实性知识
系統分析與設計 第九章 資料設計.
第三章 網際網路和全球資訊網 : 電子商務基礎建設
學校:臺中市立大業國民中學 領域:語文學習領域(國語文) 作者:林瑩貞
通訊科技教育改進計畫 「網路應用與服務組」 行動電子商務課程 XML之簡介.
人工智能 Artificial Intelligence 第十一章
Web of Distributed Ontologies
1 電子商務的本質.
无处不在的计算 天津大学计算机科学与技术学院 冯志勇教授.
数据库技术及应用 华中科技大学管理学院 课程网址:
Group multicast fanOut Procedure
《XML技术及其应用》 第1章 XML 基础知识 主讲教师:桂浩 武汉大学.
利用关联数据实现机构知识库的语义扩展方法研究
语义网若干基本问题的讨论 申思 2003年5月.
本体方法及其时空推理应用 胡鹤
Microsoft .NET 第4組 十月15, 2002 B 陳東傑 B 蔣佳勳
(C) Active Network CO., Ltd
第五章 信息与系统集成技术 概述 数据流集成技术 信息流集成技术 信息管理集成技术 流程重组与业务流程集成 企业门户集成 企业集成架构
The Research of Applying GuideLine Interchange Format (GLIF) of Protégé Application 報告人:博三 陳正怡 指導教授 李友專 博士 2018年11月20日 醫學資訊報告.
網路概論 第9章 DNS通訊協定.
从制造业的发展看计算机科学与技术的热点问题
第十二章、EPCglobal Network
Web前端开发技术与实践 第3章:初识HTML5 阮晓龙 /
DATASET 查询概念树 相关调研 2018/12/6 刘庆霞 Websoft NJU.
软件服务生态中的非确定性科学问题、互操作性的应用基础问题
Outrigger Optimization for Super Tall Structures Under Multiple Constraints 多约束条件下超高结构伸臂系统优化.
何謂名稱空間 何謂URI 名稱空間的作用方式 使用名稱空間的注意事項
第 13 章 體驗Web Service.
第六章 : 資料模型之繪製 1. 前言 資料流程圖 ( DFD ) 及 處理邏輯工具
药物和疾病啥关系 ? 李智恒.
组合模式.
後設資料(Metadata)的規劃、分析與建置方法
課程名稱:_____________ 指導教授:_____________
Unit 10: Introduction to the Internet
CALIS资源整合服务模式探讨 ——云计算下的变革
A Novel Knowledge-Based System for Interpreting Complex Engineering Drawings : Theory , Representation , and Implementation 一种全新的基于知识表述,用于解析复杂工程图的系统:方法论,展示和实现.
Study for Specification of EPG EPG规范研究
Abstract Data Types 抽象数据类型 Institute of Computer Software 2019/2/24
Meaningful Compound Concept Learning?
Semantic Navigation Liang Zheng.
Semantic interoperability of linked data
数据摘要现状调研报告 上下文摘要初步思考 徐丹云.
Answering aggregation question over knowledge base
IGroup 中国 宁艳丽 产品简介 iGroup 中国 宁艳丽
基于MapReduce的大规模本体匹配方法研究
祝智庭 (代表教育部现代远程教育技术标准化委员会)
张孝祥IT课堂 -深入体验Java Web开发内幕
第12章 组合模式 Deng Song
Why Semantic Web? Speaker: 呂瑞麟 國立中興大學資訊管理學系教授
Java Server Faces 参考书籍 Java Server Faces 核心编程.
從 ER 到 Logical Schema ──兼談Schema Integration
知識管理 第二章 本體論為基礎的知識.
RDF数据集的结构化查询构建 刘庆霞.
IEEM 5352 Enterprise Integration
MODELING GENERALIZATION & REFINING THE DOMAIN MODEL
Turtle规范报告
钱炘祺 一种面向实体浏览中属性融合的人机交互的设计与实现 Designing Human-Computer Interaction of Property Consolidation for Entity Browsing 钱炘祺
面向高考地理智能问答的知识库体系设计进展及问题讨论
5. Combinational Logic Analysis
Advanced Basic Key Terms Dependency Generalization Actor Stereotype
案例分析: THE NEXTGEN POS SYSTEM
陳昭珍 國立臺灣師範大學圖書資訊學研究所副教授
DATASET 0.2 设计方案 (第一阶段) 2019/7/20 刘庆霞 Websoft NJU.
一 什麼是邏輯? 英文為Logic,是研究使人正確思考的一門學科。 邏輯與思考方法的關係:兩者其實是同實而異名。 Logic一詞的中譯:
Presentation transcript:

语义网(Semantics Web) 语义网概述 RDF 本体 语义网描述语言

语义网概述 什么是语义网 语义网体系结构 当前语义网的主要研究内容

什么是语义网 语义网不是一个独立的网络,而是当前的这个网络的 扩展。在语义网中信息被赋予了明确界定的意义、从 而能更好地使计算机和人协调工作。把语义网纳入现 有网络结构中的首批步骤已经在着手进行之中。在不 远的将来.计算机处理并“理解”那些现今它们只能显示 的数据的能力将会大大提高,这样语义网建设的进展 就将有助于创造出引人注目的全新功能。 [Tim Berners-Lee(Web和语义网的创始人), 语义 网——科学美国人,2001] 要点 是当前Web的延伸; 加入计算机可以理解的语义

什么是语义网 起源:目前Web的缺陷。HTML仅仅用 以表示数据显示的布局,HTML所表达 的页面信息和组织方式,主要面向用户 直接阅读,没有将信息的表现形式、内 在结构和表达内容相分离,没有提供计 算机可读的语义信息,因而非常不利于 计算机直接阅读和处理。

什么是语义网 契机:90年代中期,XML的出现,将数据的 内容与布局区分开来,为语义更丰富、更自 然的网上内容表达打开了新的局面。 语义网的目标是:为Web上的信息提供具有 计算机可以理解的语义,从而满足智能代理 (Agent)对Web上异构、分布信息的有效检 索和访问,实现网上信息资源在语义层上的 全方位互联,并在此基础上,实现更高层的 基于知识的智能应用。

语义网概述 什么是语义网 语义网体系结构 当前语义网的主要研究内容

语义网体系结构 在学术界,Tim Berners-Lee提出的语义网层 次结构如图所示。该结构从底层到高层依次 为Unicode(统一字符编码)和URI (Universal Resource Indicator,统一资源定 位符)、XML、RDF和RDF Schema(简称 RDFS)、本体(Ontology)、逻辑(Logic)、 验证(Proof)和诚信(Trust)。在语义网七 层结构中的XML、RDF和Ontology三层,主 要用于表示Web的语义,因而是系统的核心 和关键所在。此外,数字签名用来检测文档 是否被篡改过,以证实其真实可靠性。

与语义网有关的标准和技术 规则 诚信 数据 验证 能自描述 的文献 数据 数字化签名 逻辑 实用分类系统词表 资源描述框架 资源描述框架结构 可扩展置标语言 可扩展置标语言结构 名域 国际码 统一资源标识

语义网体系结构 Unicode和URI层 Unicode和URI是整个语义Web的 基础,其中Unicode处理资源的编码, 保证使用的是国际通用字符集,实现网 上信息的统一编码。URI是URL (Universal Resource Locator)的超集, URI支持语义网上的对象和资源的精细 标识,从而使精确信息检索成为可能。

语义网体系结构 XML+Name Space+XML Schema层 XML层具有命名空间(Name Space) 和XML Schema(XML模式)定义,通 过XML标记语言将网上资源信息的结构、 内容与数据的表现形式进行分离,确保 语义网的定义,并支持与其他基于XML 的标准进行无缝集成。

语义网体系结构 RDF+RDF Schema层 该层用于描述万维网上的资源及其 类型,为网上资源描述提供了一种通用 框架和实现数据集成的元数据解决方案。 最底层的URI标识网上的对象,RDF和 RDFS层则可对URI标识的对象进行陈述 (Statement)。

语义网体系结构 本体层 该层用于描述各种资源之间的联系,本 体揭示了资源本身以及资源之间更为复杂和 丰富的语义信息,从而,将信息的结构和内 容相分离,对信息作完全形式化的描述,使 网上信息具有计算机可理解的语义。因为本 体定义了不同概念间的关系,所以本体层能 够对字典(或词汇,Vocabularies)的变迁提 供支持。

语义网体系结构 逻辑层 逻辑主要提供公理和推理规则,为 智能推理提供基础。该层用来产生规则。 验证(Proof) 证明注重于提供认证机制,证明层 执行逻辑层产生的规则,并结合信任层 的应用机制来评判是否能够信赖给定的 证明。

语义网体系结构 诚信(Trust) 顶层的诚信注重于提供信任机制, 以保证用户代理Agent在网上进行个性 化服务和彼此间交互合作时,更安全与 可靠。

当前语义网的主要研究内容 XML XML允许用户加入任意结构到他们的 文档但没有指明这种结构的意义是什么。 RDF 把意义编码在“三元组”集合中:实体有可以 赋值的属性 实体、属性和值都有截然不同的URI

当前语义网的主要研究内容 本体(ontology) 代理(Agent) 数据库A和数据库B可以用不同的字段来容纳‘邮政 编码’ 本体拣选输出 Ontology = ‘一个文档或文件,它形式化定义术语 之间的关系’ 代理(Agent) “基于计算的代理出现是作为一个适当的范例, 它工作在一个复杂的世界里,用多个本体、片段和 多个推理引擎。”

语义网(Semantics Web) 语义网概述 RDF 本体( Ontology ) 语义网描述语言

资源描述框架(RDF) RDF基础 RDF/XML RDF Schema

RDF基础 什么是RDF RDF的基本思想

什么是RDF RDF(Resource Description Framework), 资源描述框架 资源描述框架(RDF)是由W3C开发的一个资 源描述规范。其最初的目标就是解决不同元 数据的互操作问题。 资源描述框架(Resource Description Framework, 简称 RDF)是一个用于表达关于 Web资源的元数据,比如Web页面的标题、作 者和修改时间,Web文档的版权和许可信息, 某个被共享资源的可用计划表等。

在“Web资源(Web resource)”这一概 念一般化后,RDF可用于表达关于任何 可在Web上被标识的事物的信息,即使 有时它们不能被直接从Web上获取。比 如关于一个在线购物机构的某项产品的 信息(例如关于规格、价格和可用性信 息),或者是关于一个Web用户在信息 递送方面的偏好的描述。

RDF不仅用于显示信息,更重要的是用于信息 的处理,RDF提供了一种用于表达信息、并使 其能在应用程序间交换而不丧失语义的通用 框架。 既然是通用框架,应用程序设计者可以利用 现成的通用RDF解析器(RDF parser)以及通 用的处理工具。 能够在不同的应用程序间交换信息意味着对 于那些并非信息的最初创建者的应用程序也 是可利用这些信息。

RDF并不直接定义自己的元数据语词, 相反,它提供一个框架,在这一个框架 内,可以利用其它元数据的元素对资源 的语义进行描述。

RDF使用了XML语言,RDF在XML基础之上, 以一种标准的、能够相互操作的方式揭示数 据的深层语义。 RDF和XML是相互补充的。RDF主要关注于 元数据模型的建立,而有关编码方式、字符 集等等方面的问题,RDF依赖于XML。 还应当了解到,基于XML的RDF仅仅只是 RDF的一种应用模式,除XML语法之外, RDF还允许有其它的语法模式。

目前来看,RDF已成为元数据处理的基础,它提供 应用程序间的互操作能力,可以在Web上实现机器 能够“理解”的信息交换。 如应用于资源发现领域,以提高搜索引擎的性能; 应用于编目领域,可以对Web站点、页面、数字图书馆的内容进行揭示,并对各种相关关系进行描述; 应用于智能软件代理之中,促进知识的共享和交换; 应用于内容评价,可以保护儿童或使自己的私有权利不被侵犯; 应用于知识的组织,使这些页面能够成为合乎逻辑的一篇文章; 描述Web页面的知识产权; 表述用户或网站的隐私保护权利。 W3C甚至认为RDF和数字签名是创建“诚信Web”的关 键技术,它将被应用于电子商务、网际合作等相 关领域。

RDF基础 什么是RDF RDF的基本思想 RDF的三元模型

RDF的基本思想 RDF基于这样的思想: 用Web标识符(称作统一资源标识符, Uniform Resource Identifiers或URI)来 标识事物 用简单的属性(property)及属性值来描 述资源。 这使得RDF用资源标识-属性类型-属性值这 样的表示模型来定义一个或多个关于资源。 这种模型就是RDF的三元模型

RDF的三元模型 RDF可以将一个或多个关于资源的简单陈述表 示为一个由结点和弧组成的图(graph),其 中的结点和弧代表资源标识、属性类型或属性 值。 对于某一资源的描述,我们可以用自然语言进 行描述。例如“资源 http://www.example.org/index.html 的创建 者是John Smith” 这一句话可以用资源标识-属性类型-属性值三 元组的方式进行表示如下: 资源标识,也就是句子描述的对象是http://www.example.org/index.html 属性类型,也就是资源的属性是Creator 属性值,也就是资源属性的值是John Smith

资源-属性类型-属性值关系图 http://www.example.org/index.html John Smith Creator 这是一个由两个节点和一条弧线构成的图,其中一个节点是资源,另一个节点是属性值,弧线从资源指向属性值,表明资源具有某一属性类型的属性值。

从另一个角度来看,语句“资源 http://www. example. org/index 从另一个角度来看,语句“资源 http://www.example.org/index.html 的创建 者是John Smith”这一句话可以由主语、谓语、 宾语构成。其中: 主语是URL http://www.example.org/index.html 谓语是词"creator" 宾语是"John Smith“ 在RDF中, 用于识别事物的那部分就叫做主语 用于区分语句对象主语的各个不同属性(譬如:作 者,创建日期,语种等等)的那部分叫做谓语 用于区分各个属性的值的那部分叫做宾语

尽管这种主语、谓语、宾语关系和自然语言 语法中的主语、谓语、宾语关系还不完全一 样,但这足以构成RDF存在的逻辑基础: 语句可以对资源进行描述; 语句由主语、谓语、宾语组成; 语句中的主语、谓语、宾语可以被一个可被标识 的资源,此资源的属性描述(如名称、创建时间、 出版者等)和资源的属性值所替代。 RDF基于资源标识-属性类型-属性值的三元模型提 供了对资源进行描述的框架。

RDF的三元模型可以对资源进行描述,但为了 使其能够被计算机处理,还需要考虑: 一整套计算机可以处理的标识,这些标识能够对 所描述的资源、属性类型和属性值进行标识,并 且使这些资源标识、属性类型和属性值具有一个 明确有指示意义,没有二意性,这个标识符系统 不会和其他人可能在Web上使用的相似的标识符系 统混淆 一种计算机可以处理的语言,以描述这一模型, 并且可以在应用系统之间交换这些信息。

第一个问题(一整套计算机可以处理的标识) RDF使用了URI和命名空间作为其标识机制(用于 标识陈述中的主体、谓词和客体)的基础。 更准确地说,RDF使用的是URI参照( URI引用) (URI references) 一个URI参照(或“URIref”)是一个在尾部附加了 可选的“片段识别符(fragment identifier)”的URI。 比如,URI参照(URIref) http://www.example.org/index.html# section2由URI http://www.example.org/index.html 和(由符号#分 隔的)的section2 (片段标识符)组成。

第二个问题(一种计算机可以处理的语言) 为了用一种机器可处理的(machine-processable) 方式来表示RDF陈述(RDF statements),RDF采 用了XML XML允许任何人来设计他们自己的文档格式,并 可用这种格式书写文档。 RDF定义了一个特殊的XML标记语言(称为 RDF/XML)来表示RDF信息和在机器间交换这些 信息。

例如上例子中的资源、属性类型和属性 值,可以用下面的URI参照表示如下: 资源 http://www.example.org/index.html 属性类型 http://purl.org/dc/elements/1.1/creat or 属性值 http://www.example.org/staffid/85740

如果利用了URI参照,则上面的图也应当改为: http://www.example.org/index.html http://purl.org/dc/elements/1.1/creator http://www.example.org/staffid/85740

在前一个图中,利用了方形来表示属性值 “John Smith”,而在后一个图中,则利用椭 圆来表示属性值 “http://www 二者不同之处在于John Smith是常量值(在 RDF中,被称为文字值,literal),而 http://www.example.org/staffid/8574是一 个URI参照。 在RDF中,属性值可以是URI参照或常量值。

在RDF中,利用URI参照的好处是能够非常明确 地表示语句的主题,例如使用了 http://www. example 在RDF中,利用URI参照的好处是能够非常明确 地表示语句的主题,例如使用了 http://www.example.org/staffid/85740,而 不是John Smith,它能够明确地表明,此页面 的创建者不是字符串“John Smith”,也不是成 千上万个名为“John Smith”的人,而是一个与 特定URI参照相关的John Smith。 另一方面,由于这是一个指向特定John Smith 的URI参照,因此,它其实也是一个完全具备 其它资源所具有的属性的资源,我们可以增加 信息,以进一步描述这个John Smith(这个资 源)。所做的工作仅只需将指向John Smith的 URI参照作为一个需要描述的对象即可,如下 图中,我们增加了对John的名字和年龄的说明。

http://www.example.org/index.html http://purl.org/dc/elements/1.1/creator http://www.example.org/staffid/85740 John Smith 27 http://www.example.org/terms/name http://www.example.org/terms/age

(RDF/XML) 为了使RDF便于计算机处理,RDF利用了XML语 言作为支持。实际上RDF是XML语言的一个特 殊应用,它遵守XML的语法规则,这种基于 XML语法的RDF被称为RDF/XML。 正如前面我们所说的,RDF本身不定义元数据 元素(语词体系),在RDF/XML中,为了唯一地 引用某一元数据(如DC、P3P或PICS)的元素, RDF充分借助了XML名字空间。名字空间的应 用,使得我们可以用更加简洁的方式描述RDF 中资源、属性类型和属性值的唯一性。

使用了名字空间的XML元素被称为XML修 饰名(XML Qualified name,Qname)。 Qname由一个指向名字空间URI的前缀, 紧接一个冒号(:),再接一个名字空 间中的本地名称组成。

完全的URI参照可以用Qname进行表示。例如 上例中的属性类型 http://purl.org/dc/elements/1.1/creator 在这种情况下,可以将DC作为一个前缀指定 给名字空间为 Xml:DC= http://purl.org/dc/elements/1.1/ 则DC:creator就能够代表指向 http://purl.org/dc/elements/1.1/creator 的URI参照 。

下面是几个比较著名的名字空间 前缀rdf:,名字空间URI: http://www.w3.org/1999/02/22-rdf-syntax-ns# 前缀rdfs:,名字空间URI: http://www.w3.org/2000/01/rdf-schema# 前缀dc:,名字空间URI: http://purl.org/dc/elements/1.1/ 前缀owl:,名字空间URI: http://www.w3.org/2002/07/owl# 前缀xsd:,名字空间URI: http://www.w3.org/2001/XMLSchema#

针对上例,我们再定义两个名字空间前缀: 则上面的URI参照例子就可以简写为: 前缀 ex:, 名字空间URI: http://www.example.org/ 前缀 exstaff:, 名字空间 URI: http://www.example.org/staffid/ 则上面的URI参照例子就可以简写为: 资源 ex:index.html 属性类型dc:creator 属性值 exstaff:85740

在上图中,利用了两个文字值来表示资源的姓 名和年龄。其中“John Smith”和“27”是两种不 同类型。“John Smith”是字符类型,而“27”是 数值类型。 为了更确切地表示文字值的类型,RDF引入了 类型文字值(typed literal)的概念。RDF类 型文字值由字符串和URI参照组成,其中的URI 参照唯一标识了一个特定的数据类型。例如上 图中的“27”,可以表示如下: "27"^^http://www.w3.org/2001/XMLSchema#intege r 如果采用了Qname的方式,可表示为: "27"^^xsd:integer

至此可以看到,RDF本质上很简单,它是由节 点和弧线组成的图,通过URI参照,能够被解 释成为对某个事物的某些特性的说明。 另外,在这一模式中,需要提供一种方法来 唯一地描述资源、属性类型、属性值以及属 性值的类型。URI参照的应用,提供了这种描 述的唯一性。在实际应用中,通过Qname来替 代URI参照。

资源描述框架(RDF) RDF基础 RDF/XML RDF Schema

RDF/XML 如上所述, RDF的概念模型是节点和弧 线组成的图。 RDF提供了一个XML语法以实现RDF模型 的记录和交换,被称为RDF/XML。 RDF/XML是书写RDF的规范语法。 在本节中,将对RDF/XML语法进行说明。

这是一个XML文件。对于这个例子,需要注意 三点: 我们还以“资源 http://www.example.org/index.html 的创建 者是John Smith”这一个句子为例。对于这一 个句子,可以利用RDF表示如下: <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax- ns#" xmlns:dc="http://purl.org/dc/elements/1.1/ "> <rdf:Description rdf:about="http://www.example.org/index.html"> <dc:creator >John Smith</dc:creator> </rdf:Description> </rdf:RDF> 这是一个XML文件。对于这个例子,需要注意 三点:

(1)    根元素RDF 这个根元素以及其它所有的RDF元素通常都放在 http://www.w3.org/1999/02/22-rdf-syntax-ns# 名字空间中 , 这个名字空间要么利用前缀rdf引 用,要么被设置成为缺省名字空间。如果使用显 示前缀的方式,则空的RDF元素如下所示: <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" > <!- rdf:Description element will go here> </rdf:RDF>

如果使用缺省名字空间,则表示如下。 <?xml version="1.0"?> <RDF xmlns ="http://www.w3.org/1999/02/22-rdf-syntax-ns#" > <!- rdf:Description element will go here> </RDF>

(2)描述元素Description 谈及RDF的statement时,显而易见, statement 是一种“description(描述)”。并且,它是一种 “about(有关)”语句主体的描述。RDF/XML采用了 rdf:about 属性来指定主体资源的URIref。 在RDF/XML中,Description元素的出现表示对资 源描述的开始,被描述的资源由Description元素 的“about”进行唯一标识。而资源的其它属性元素 被嵌套在Descrition元素之内,表示这些属性是 “about”所指示资源的属性。

在上面的片段中,表示 http://www.example.org/index.html 所指示资 源的创建者是John Smith。 <rdf:Description rdf:about="http://www.example.org/index.html"> <dc:creator >John Smith</dc:creator> </rdf:Description> 在上面的片段中,表示 http://www.example.org/index.html 所指示资 源的创建者是John Smith。

(3)名字空间 RDF本身不定义自已的元数据语词,它通过 URI参照利用其它元数据的语词来对资源属 性进行说明。 在RDF/XML中,利用名字空间来实现URI参 照。如例子中的creator元素,就是引用了 DC元数据元素,它在根元素中,通过 xmlns:dc=”http://purl.org/dc/elements /1.1/” 语句指明。

以下是更多的实例

对资源多个属性的描述 下面的例子,增加了另一个名字空间,对资源的多个属性进 行了描述。 <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:exterms="http://www.example.org/terms/"> <rdf:Description rdf:about="http://www.example.org/index.html"> <exterms:creation-date>August 16,1999</exterms:creation-date> <exterms:language>English</exterms:language> <dc:creator rdf:resource="http://www.example.org/staffid/85740"/> </rdf:Description> </rdf:RDF>

注意,在dc:creator元素中,使用了空 元素,在这个空元素中,使用了 rdf:resource属性,指出属性元素的值 是另一个由URI参照指定的资源。

文字值类型的使用 <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:exterms="http://www.example.org/terms/"> <rdf:Description rdf:about="http://www.example.org/index.html"> <exterms:creation-date rdf:datatype= "http://www.w3.org/2001/XMLSchema#date">1999-08-16 </exterms:creation-date> </rdf:Description> </rdf:RDF> 在上面的例子中,使用了文字值类型,在 exterms:creation-date属性元素中,增加了 一个rdf:datatype属性,这一属性的值是一个 指向一个日期类型的URI参照。

多资源描述 <?xml version="1.0"?> <rdf:RDF xmlns:rdf=http://www.w3.org/1999/02/22-rdf- syntax-ns# xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:exterms="http://www.example.org/terms/"> <rdf:Description rdf:about="http://www.example.org/index.html"> <exterms:creation-date>August 16, 1999</exterms:creation-date> </rdf:Description> <dc:language>en</dc:language> </rdf:Description> </rdf:RDF>

容器的使用 当RDF元素使用同类型的多个属性来描述一 个资源时,容器就可以将这些属性组织起 来。

RDF定义了三种类型的容器:rdf:Bag, rdf:Seq,rdf:Alt。其中 下面的例子,描述 “课程Course 6.001的 学生有Amy, Mohamed, Johann, Maria和 Phuong”这样一个句子。

<. xml version="1. 0". > <rdf:RDF xmlns:rdf="http://www. w3 <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:s="http://example.org/students/vocab#"> <rdf:Description rdf:about="http://example.org/courses/6.001"> <s:students> <rdf:Bag> <rdf:li rdf:resource="http://example.org/students/Amy"/> <rdf:li rdf:resource="http://example.org/students/Mohamed"/> <rdf:li rdf:resource="http://example.org/students/Johann"/> <rdf:li rdf:resource="http://example.org/students/Maria"/> <rdf:li rdf:resource="http://example.org/students/Phuong"/> </rdf:Bag> </s:students> </rdf:Description> </rdf:RDF>

其中用到<rdf:Bag>容器。<rdf:Bag> 元素被嵌入在<s:students> 属性元素 之内,对于<rdf:Bag> 元素内的各个子 元素,以rdf:li元素进行进行描述。元 素rdf:li取自于HTML中的list item之 意。 <rdf:Seq>容器与<rdf:Bag>容器的用法 相似,不同之处在于<rdf:Seq>中的各 个子元素是以一定的顺序出现的。

下例是一个使用了容器rdf:Alt的例子。 <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:s="http://example.org/packages/vocab#"> <rdf:Description rdf:about="http://example.org/packages/X11"> <s:DistributionSite> <rdf:Alt> <rdf:li rdf:resource="ftp://ftp.example.org"/> <rdf:li rdf:resource="ftp://ftp1.example.org"/> <rdf:li rdf:resource="ftp://ftp2.example.org"/> </rdf:Alt> </s:DistributionSite> </rdf:Description> </rdf:RDF> 它表示“X11的源代码可以被在 ftp.example.org, ftp1.example.org,或在 ftp2.example.org”上找到。

资源描述框架(RDF) RDF基础 RDF/XML RDF Schema

RDF Schema RDF Schema概述 类及其描述 描述属性

RDF Schema概述 通过已经命名的属性类型和属性值,RDF提供 了一种简单的方式对资源进行说明。但是, 在某些情况下,用户希望能够根据需要自定 义一些词汇,然后用这些词汇来描述资源。 这些词汇表明用户正在描述某种资源,并且 会采用某些特定的特性来描述。RDF本身并不 能针对特定应用需求来定义一些类和特性。 这些类和特性被称为RDF词汇,它们需要通过 RDF词汇描述语言:RDF Schema(RDF的一种 扩展语言) 来定义。

例如某个经营帐篷的公司,需要对帐篷的型 号、重量、包装、大小进行描述的时候,需 要定义一个类来描述帐篷,定义一些属性来 描述帐篷的型号、重量、包装大小等。 RDF本身并不能够定义这种针对特定应用的类 和属性,但是这种类和属性可以被当成是RDF 的语词进行描述,当然这需要对RDF进行扩展, 而这种扩展是由RDF语词描述语言——RDF Schema提供的。

RDF Schema是RDF的语义扩充。 RDF Schema本身也不是具体去指定一个 针对应用的语词体系,如上面所的帐篷、 型号、重量、包装大小等,实际上,它 提供一种机制去描述这些类和属性,并 指明这些类和属性之间的种种关系,例 如什么哪些类具有哪些属性,哪些属性 需要一起应用等等。

另一方面,RDF Schema为RDF提供了一个类型 系统。 RDF Schema的类型系统可能与面向对象语言 中的程序设计语言相似,例如RDF Schema认 为资源是一个或多个类的实例。另外,RDF Schema也可以以一种层次化的结构来组织类。 例如ex:Dog(狗)类可以作为ex:Mammal(哺 乳动物)的子类。但是,RDF类和属性在某些 地方与程序设计中的类和属性有很大的差异。 我们将在后面看到。

RDF Schema 所具有的这些能力本身也 是以 RDF词汇形式提供的。也就是说, 这些RDF 词汇是一组带有特殊含义的、 预定义的RDF资源。 这些资源的(RDF Schema词汇)URI带 有前缀 http://www.w3.org/2000/01/rdf- schema# (QName通常采用前缀 rdfs:)。

采用RDF Schema 语言所定义的词汇描述 (schemas)也是合法的RDF图。 因此,即使一个软件不是专为处理新加的RDF Schema词汇而开发的,它仍然可以将schema解 释为一个包含了各种资源和特性的合法RDF图 但是这个软件并不能“理解”新添加的RDF Schema术语的内在含义。 为了理解新加术语的含义,RDF 软件必须能够 处理一种扩展语言。这种扩展语言不仅仅包含 rdf:前缀的词汇,而且还包含了rdfs:前缀的 词汇,以及这些词汇的内在含义。

类及其描述 最基本的描述过程是标识需要描述的事物, 通常是从划分被描述事物的种类开始的。RDF 将这些事物的种类称之为类。 RDF Schema中的类相当于某类事物的总体概念, 如同Java程序中的类一样。RDF类可以代表几乎所 有事物,如Web页面、人、文件类型、数据库或其 它抽象概念。 类的描述使用RDF Schema中的: 资源(rdfs:Class和rdfs:Resource),和 属性(rdf:type和rdfs:subClassOf)

在RDF Schema中,首先要确定类,属于某一类的具 体资源是这个类的实例。 在RDF Schema中,一个类是任何具有rdf:type属性、 并且该属性的值为rdfs:Class的资源。 如描述一个交通工具的类,并为这个类指定一个URI 参照为ex:MotorVehicle,则需要指出这个类的 rdf:type属性为rdfs:Class。如: ex:MotorVehicle rdf:type rdfs:Class rdf:type用于指示资源是类的一个实例。因此,在 定义了一个类ex:MotorVehicle之后,资源 exthings:companyCar可以通过RDF语句被描述作一 种交通工具。 exthings:companyCar rdf:type ex:MotorVehicle

在RDF Schema中,rdfs:Class本身也是资源,而 且也有一个rdf:type属性并且该属性的值为 rdfs:Class。一个资源可以是一个或多个类的实 例。

我们还可以对更特殊的交通工具进行描述,如可 以将卡车、货车的资源作为一个类进行描述。 ex:Van rdf:type rdfs:Class ex:Truck rdf:type rdfs:Class

如果资源ex:MiniVan是ex:Van的一个实例, 如: 类与类之间的特化关系(specialization relationship)可以用预定义的属性 rdfs:subClassOf来描述。例如,可以通过编写下 面这条RDF声明来描述ex:Van是一种特殊的 ex:MotorVehicle ex:Van rdfs:subClassOf ex:MotorVehicle 如果资源ex:MiniVan是ex:Van的一个实例, 如: ex:MiniVan rdf:type ex:Van 则可以推断ex:MiniVan同样是ex:MotorVehicle的 一个实例。

下面是以RDF/XML书写的交通工具Schema <?xml version="1.0"?> <!DOCTYPE rdf:RDF [<!ENTITY xsd "http://www.w3.org/2001/XMLSchema#">]> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xml:base="http://example.org/schemas/vehicles"> <rdf:Description rdf:ID="MotorVehicle"> <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/> </rdf:Description> <rdf:Description rdf:ID="PassengerVehicle"> <rdfs:subClassOf rdf:resource="#MotorVehicle"/> <rdf:Description rdf:ID="Van"> <rdf:Description rdf:ID="MiniVan"> <rdfs:subClassOf rdf:resource="#Van"/> <rdfs:subClassOf rdf:resource="#PassengerVehicle"/> </rdf:RDF>

描述属性 除了描述特定的类之外,用户团体还需要能 够描述特定的事物的某些属性(如MiniVan的 座位数)。 在RDF Schema中,利用RDF类rdf:Property以 及RDF Schema的rdfs:domain, rdfs:range和 rdfs:subPropertyOf,可以对属性进行描述。 在RDF中,所有的属性都是类rdf:Property的 实例。对于新的属性,可以通过指定其 rdf:type为rdf:Property URI参照进行声明。 如 exterms:weightInKg rdf:type rdf:Property

除了rdf:Property 之外,RDF Schema还提供 了语词以描述在RDF数据中如何对类下的属性 进行声明。其中最重要的是利用RDF Schema 的rdfs:range和rdfs:domain属性,来进一步 描述应用程序专用的属性。

rdfs:range属性用来指定某一属性值是某个 类的一个实例。例如,当需要指定属性 ex:author的值是ex:Person的实例时,需要 按以下的RDF进行声明。 ex:Person rdf:type rdfs:Class ex:author rdf:type rdf:Property ex:author rdfs:range ex:Person 一个属性可以有多个range,如下所示: ex:hasMother rdfs:range ex:Female ex:hasMother rdfs:range ex:Person

对于上面的ex:hasMother属性,如果指定了 下面的语句 exstaff:frank ex:hasMother exstaff:frances 则表示exstaff:frances同时是ex:Female 和 ex:Person的实例。

rdfs:range属性还可以用于指示属性值是一 个类型文字值。例如,如果指定ex:age是一 个属性,并且其值为XML Schema的数据类型 xsd:integer,则可以用以下RDF语句声明。 ex:age rdf:type rdf:Property ex:age rdfs:range xsd:integer 其中XML Schema中的xsd:integer数据类型,还可 以用RDF Schema的类rdfs:Datatype进行显性的说 明。如下所示: xsd:integer rdf:type rdfs:Datatype .

rdfs:domain属性用于指定特定的属性适用于某个特 定的类。例如如果需要指出属性ex:author适用于类 为ex:Book的实例,则可利用以下RDF语句进行说明: ex:Book rdf:type rdfs:Class ex:author rdf:type rdf:Property ex:author rdfs:domain ex:Book 这些语句说明ex:Book是一个类,ex:author是属性,并且属 性ex:author是ex:Book实例的一个属性。 一个属性也可以有多个domain,如下例表明exterms:weight 属性可以适用于 ex:Book 和 ex:MotorVehicle类。 exterms:weight rdfs:domain ex:Book exterms:weight rdfs:domain ex:MotorVehicle

在此,可以利用range和domain来为 MotorVehicle增加新的属性: ex:registeredTo和 ex: seatNumber, ex:registeredTo 属性适用于任何 ex:MotorVehicle并且其值为ex:Person。 ex: seatNumber适用于ex:PassengerVehicle,它 的值是一个xsd:integer,表明座位数。 其RDF语句片段如下所示:

<rdf:Property rdf:ID="registeredTo"> <rdfs:domain rdf:resource="#MotorVehicle"/> <rdfs:range rdf:resource="#Person"/> </rdf:Property> <rdf:Property rdf:ID="seatNumber"> <rdfs:domain rdf:resource="#PassengerVehicle"/> <rdfs:range rdf:resource="&xsd;integer"/> <rdfs:Class rdf:ID="Person"/> <rdfs:Datatype rdf:about="&xsd;integer"/>

RDF Schema通过rdfs:subPropertyOf属性, 可以指定两个属性之间的关系。例如 ex:primaryDriver 和 ex:driver都是属性, 并且属性ex:primaryDriver是属性 ex:driver的一个特例,可以用RDF声明如下: ex:driver rdf:type rdf:Property. ex:primaryDriver rdf:type rdf:Property ex:primaryDriver rdfs:subPropertyOf ex:driver

下面是交通工具Schema的完整声明 <?xml version="1.0"?> <!DOCTYPE rdf:RDF [<!ENTITY xsd "http://www.w3.org/2001/XMLSchema#">]> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xml:base="http://example.org/schemas/vehicles">   <rdfs:Class rdf:ID="MotorVehicle"/> <rdfs:Class rdf:ID="PassengerVehicle"> <rdfs:subClassOf rdf:resource="#MotorVehicle"/> </rdfs:Class> <rdfs:Class rdf:ID="Van">

<rdfs:Class rdf:ID="MiniVan"> <rdfs:subClassOf rdf:resource="#Van"/> <rdfs:subClassOf rdf:resource="#PassengerVehicle"/> </rdfs:Class>   <rdfs:Class rdf:ID="Person"/> <rdfs:Datatype rdf:about="&xsd;integer"/> <rdf:Property rdf:ID="registeredTo"> <rdfs:domain rdf:resource="#MotorVehicle"/> <rdfs:range rdf:resource="#Person"/> </rdf:Property> <rdf:Property rdf:ID="seatNumber"> <rdfs:domain rdf:resource="#PassengerVehicle"/> <rdfs:range rdf:resource="&xsd;integer"/>  

<rdf:Property rdf:ID="driver"> <rdfs:domain rdf:resource="#MotorVehicle"/> </rdf:Property> <rdf:Property rdf:ID="primaryDriver"> <rdfs:subPropertyOf rdf:resource="#driver"/> </rdf:RDF>

以上说明了如何利用RDF Schema描述类和属 性。如何利用这个Schema来描述资源?下面 是一个描述ex:PassengerVehicle实例的例子:

<?xml version="1.0"?> <!DOCTYPE rdf:RDF [<!ENTITY xsd "http://www.w3.org/2001/XMLSchema#">]> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf- syntax-ns#" xmlns:ex="http://example.org/schemas/vehicles#" xml:base="http://example.org/things">   <ex:PassengerVehicle rdf:ID="johnSmithsCar"> <ex:registeredTo rdf:resource="http://www.example.org/staffid/85740"/> <ex:seatNumber rdf:datatype="&xsd;integer">5</ex: ex:seatNumber > <ex:primaryDriver rdf:resource="http://www.example.org/staffid/85740"/> </ex:PassengerVehicle> </rdf:RDF>

语义网(Semantics Web) 语义网概述 RDF 本体(Ontology) 语义网描述语言

本体(Ontology) Ontology的概念 Ontology的作用 Ontology的类型 Ontology的组成 当前研究存在的问题

Ontology的概念 Ontology 本来是,哲学中研究 ‘being’的性质 及其内在关系的理论;ontology 是一种元理论, 它的理论让人们在认识上,能够区别开那些 本来是不同的beings,区别开beings之间关系 的差异。 Ontology is the theory of objects and their ties . An ontology is a specification of a conceptualization An Ontology 是在一定知识范围内,对所谈 论的一组概念,对它们给出一种语义约定。

我们所说的Ontology来自人工智能的研究,被 用于促进知识的共享和重用。 创建Ontology的目标就是提供一种机器可以处 理的信息资源语义描述机制,使得知识语义能 够在不同的智能代理(软件和人)之间传递和 交流。在一个知识系统中,问题解决方法描述 推理行为,而Ontology描述静态的领域知识。

近十几年来,关于Ontology的定义有多个。最 能描述Ontology本质的是斯坦福大学的Gruber 在1993年的定义: “概念”指的是对现实现象的抽象 “显性的”意味着对概念的类型、以及对概念的应用是 显性定义的 “形式化的”意味着Ontology应当是机器可读的 “共享”意味着一个Ontology揭示着广泛共享的知识, 也就是说,一个Ontology不仅仅被几个个体接受, 而需要被一个群体所接受的。 本质上讲,Ontology在知识工程中的角色在于 促进一个领域模型的建设。一个Ontology提供 了某个领域模型内语词和相互关系的描述。

其它定义 Neches et al.(1991)指出:“一个本体定 义了组成主题领域的词汇的基本术语和关 系,以及用于组合术语和关系以定义词汇 的外延的规则。” 该定义只是给出了建立 一个本体的基本要素,即:要建立一个本 体,首先要识别所处理领域的基本术语和 这些术语之间的关系,而后识别组合这些 术语和关系的规则,并提供这些术语和关 系的定义。

William 和Austin(1999)指出,本体是用 于描述或表达某一领域知识的一组概念或 术语,可用于组织知识库较高层次的知识 抽象,也可用来描述特定领域的知识。 Chandrasekaran 等人(1999)认为本体是属 于人工智能领域中的内容理论,它研究特 定领域知识的对象分类、对象属性和对象 间的关系,为领域知识的描述提供术语。

从以上不同研究者的定义,可以看出本 体涉及到的概念为:术语(词汇)、术 语关系、规则、概念化、形式化的规格 说明、领域知识、表达和共享。 可见,本体就是通过对于概念、术语及 其相互关系的规范化描述,勾画出某一 领域的基本知识体系和描述语言。

本体(Ontology) Ontology的概念 Ontology的作用 Ontology的类型 Ontology的组成 当前研究存在的问题

Ontology的作用 (1) 本体可以在不同的建模方法、范式、 语言和软件工具之间进行翻译和映射,以实 现不同系统之间的互操作和继承。 (2) 从功能上来讲,本体和数据库有些相 似。但是本体比数据库表达的知识丰富得多。 首先,定义本体的语言,在词法和语义上都 比数据库所能表示的信息丰富得多;最重要 的,本体提供的是一个领域严谨丰富的理论, 而不单单是一个存放数据的结构。

(3) 本体是领域内重要实体、属性、过程 及其相互关系形式化描述的基础。这种形式 化的描述可成为软件系统中可重用和共享的 组件。 (4) 本体可以为知识库的构建提供一个基 本的结构。以描述对象的类型而言:有简单 事实及抽象概念,这些可以描述成一个本体 的静态实体部分,它们主要描述的是事物或 概念的各个组成部分以及这些组成部分之间 的静态联系;本体也可以描述事物或概念的 运动和变化。应用本体,知识库就可以运用 这类结构去表达现实世界中浩如烟海的知识 和常识。

(5) 对于知识管理系统来说,本体就是一 个正式的词汇表。本体可以将对象知识的概 念和相互间的关系进行较为精确的定义。在 这样一系列概念的支持下进行知识搜索、知 识积累、知识共享的效率将大大提高,真正 意义上的知识重用和知识共享也能成为现实。 (6) 本体适合表示抽象的描述。而企业模 型是人们对企业或者企业的某些模型的抽象 描述,因此在企业逻辑建模中,本体的使用 可以帮助我们清楚地理解企业特定领域的相 关元素、关系和概念,让知识表达更加准确 便捷,帮助人们进行更好的企业决策。

本体在语义Web 和其它很多领域都有着 广泛的应用。本体的最大贡献在于它可 以将某个或多个特定领域的概念和术语 规范化,为其在该领域或领域之间的实 际应用提供便利。

本体(Ontology) Ontology的概念 Ontology的作用 Ontology的类型 Ontology的组成 当前研究存在的问题

Ontology的类型 有组织的对象的集合可被认为是本体 (Wiederhold& Jannink, 1999) 目录和索引(信息获取领域) 字典词典(计算语言学领域) 面向对象的类定义(软件工程领域)

本体分类 Uschold & Gruninger (1996) 和 Uschold (1996)分为三类 形式化程度 目的 描述对象 高度非形式化 结构非形式化 半形式化 严格形式化 目的 通讯 互操作 系统工程 re-usability, knowledge acquisition, reliability, specification 描述对象 特殊领域本体、一般世界知识本体 问题求解本体、知识表示语言本体….等

本体分类 Guarino (1997)从两个方向为本体分类 细节的程度 独立的程度 元本体(frame ontology (Gruber, 1993a)) 参考 (reference)本体 共享(shareable)本体 领域(domain)本体 独立的程度 顶级(top-level)本体 任务(task)本体 应用程序(application)本体,

本体分类 Gomez-Perez & Benjamins (1999) 知识表示本体 (e.g 形式化本体 formal ontology) 常识本体 (e.g CYC ontology) 顶级本体(top-level) (e.g Sowa’s boolean lattice, PANGLOSS, PenmanUpper Level, Mikrokosmos, WordNet upper level) metaontology/generic ontology/core ontology (e.g., mereology ontology) domain ontology (e.g., EngMath ontology, PhysSys, Enterprise, TOVE, (KA)2, and so on) linguistic ontology (e.g., WordNet, Sensus, GUM) task ontology (domain-task ontology, method ontology, application ontology)

一种常用的分类 通用本体(General Ontology) 领域本体(Domain Ontology)  任务本体(Task Ontology) 应用本体(Application Ontology) Web Ontology

通用本体(General Ontology) 领域本体(Domain Ontology) 描述的特定领域中的概念及其概念之间的关系。  任务本体(Task Ontology) 描述的是特定任务或行为中的概念及概念之间的 关系。 应用本体(Application Ontology) 描述的是依赖于特定领域和任务的概念和概念之 间的关系。 Web Ontology

Web ontology: 为semantic web服务的ontology 表示语言: 开放性 vs. 封闭性, RDF schema 整个web共享 vs. 系统内共享 经常更新 vs. 系统建成后很少更新

本体(Ontology) Ontology的概念 Ontology的作用 Ontology的类型 Ontology的组成 当前研究存在的问题

Ontology的组成 Gruber提出了一种四元素表示方法,即一个本体中的四个主要元素是: 概念(concepts) 关系(relations) 实例(instances) 公理(axioms)

概念 概念表示某个领域中一类实体或事物的集合。通常概念可以分成两大类,一类是简单概念(primitive concepts),另一类是定义的概念(defined concepts)。 简单概念是那些只有必要条件的类成员关系 (primitive concepts are those which only have necessary conditions (in terms of their properties) for membership of the class.)。 例如:正方形是四个角都是直角的四边形。因此所有的正方形的四个角都是直角,但允许一些四个角都是直角的四边形不是正方形。 定义的概念是指关于一个事物是另一个类成员的既充分、又必要的描述(Defined concepts are those whose description is both necessary and sufficient for a thing to be a member of the class.)。 例如:“三好学生”是学习好、身体好、思想好的学生。三好学生一定是学习好、身体好、思想好,而学习好、身体好、思想好的学生就是三好学生。

关系 关系描述概念和概念的属性的交互(Relations describe the interactions between concepts or a concept‘s properties.)。关系也可以分为两大类:一种是树状分类学关系;另一种是联合关系。

分类学将概念组织成子类-超类状的概念树结构(Taxonomies that organize concepts into sub- super-concept tree structures.)。最常见的分类形式是: 专门化关系(Specialization relationships)通常被认为是“××是一种××”的关系。例如:博士生是研究生,而研究生是学生。 部分关系(Partitive relationships)是描述一个概念部分的是另一个概念。例如:部分博士研究生是在职的工作人员。

联合关系是指树状结构概念之间的横向关系。常见的联合关系如下: 主格关系 描述概念的名称(Nominative relationships describe the names of concepts)。 位置关系 描述一个概念与其他概念的的相互位置关系(Locative relationships describe the location of one concept with respect to another)。 结合的关系 表示功能等(Associative relationships that represent, for example, the functions, processes a concept has or is involved in, and other properties of the concept)。 还有一些其它的关系类型,如因果关系(causative‘ relationships)、参照关系等。

与概念一样,关系也可以被组织成分类树状的结构。关系也有属性,这些属性可深入刻画、描述概念之间的关系。

实例 是概念表示的具体的事物,如:北京师范大学是概念“大学”的一个实例。 严格的说,一个本体不应该包括任何实例,因为它被假设为一个具体领域的概念化。一个本体与相关的实例的组合就是我们如今所称呼的知识库(knowledge base)。 然而判断一个东西是否是某个概念的实例实际上是很困难的,通常它依赖于具体的应用。例如:化学元素是个概念,钾是化学元素的一个实例。但是关于钾是化学元素的一个实例的判定却是有争议的,因为钾本身是一个概念,它表示不同的钾和钾的同位素。这是本体研究中的一个重要问题。

公理 用来限制类和实例的取值范围,公理中包括许多具体的规则和约束。 典型的是数据类型和取值范围

本体(Ontology) Ontology的概念 Ontology的作用 Ontology的类型 Ontology的组成 当前研究存在的问题

开发Ontology的方法 一般过程 (1)目标:确定ontology的目标,是为组织某一专业领域的知识 提供框架体系。 (2)未加工的数据:这一步为ontology的构建提供未加工的数据。 在此,不止包含概念(例如:corn rootworm 玉米食根线虫、 peanut 花生、leaf 叶片),还有概念间的重要关系(例如:一种 特定害虫发生在一个叶片上,一种特定害虫引起一种特定的病 害)。 (3)得到一份原始的词表清单:利用软件提取记号并完成简单 的统计计算,可以从未加工的数据中提取一份术语清单。应用统 计软件,可以得到出现在未加工文本中频率最高的记号样本。 在这种分析中,被确定的术语也是用来构建ontology的概念基础。重要的是区分术语,它们是用一种特定的自然语言表达的,还要区分表达术语含义的概念。

(4)鉴定、识别初始的分类法:利用前边确定的概念 清单形成初始的分类法。鉴定和识别对于维持分类法 的一致性很重要,分类体系的结构化需要调整每一个 概念。新概念(不是原始数据的一部分)的引入是为 了描述相关概念的类别。分类体系的顶部应该是最为 抽象的概念。 (5)添加限制条件与公理:通过添加属性、属性限制 和公理表达的各个概念间的关系,分类体系中的概念 得到进一步的完善。例如,“plant”可以有“pest”属性, 这个属性必须是“pest”类目的成员。一种作物的组成部 分必须是“plant part”的成员。事件可以有描述代理和 对象的属性。

(6)一致性检验:如果包含的关系集得到了正确的描述, 那么属性限制和公理集对于任何类的子类均为真。任何额 外的、强加在子类上的限制,必须与子类所继承的、对母 类的限制条件相一致。一致性可以得到自动检验。 (7)ontology不断变化:当概念不断地添加进来,ontology 也随之变化。这种变化是一个可持续的过程。 (8)评价ontology:部分观点认为,构建ontology的最初目 的一经满足,就算是完成了任务。在一个图像库ontology的 实例中,如果来自媒介汇编的图像通过附加在概念后得到 了分类,那么这个ontology还算是比较完备。通过查看用户 怎样利用这个ontology来定位特殊图像,可以进行相关评价。

本体(Ontology) Ontology的概念 Ontology的作用 Ontology的类型 Ontology的组成 当前研究存在的问题

构建ontology的工具 Ontolingua Server (http://www.ksl- svc.stanford.edu:5915) Ontosaurus (http://www.isi.edu/isd/ontosaurus.html) WebOnto(http://webonto.open.ac.uk) PROTÉGÉ(http://protege.stanford.edu) OntoEdit(http://www.ontoprise.de/)

Ontolingua Server Ontolingua服务器和Ontosaurus提供的翻译程序能 够生成以期望的语言写成的ontology(第一版草 案) 。 Ontolingua服务器是拥有最大的用户团体的工具。 其编写ontology的语言是Ontolingua语言。该工具 有一个保存ontology的文库,其中的ontology能够 被复用,以构建其它ontology,而且任何人均可向 文库中添加ontology并使它也可以被别人使用。因 此,世界各地不同的用户将能够协作构建ontology。 这种工具允许不同的用户在小组研讨会中同时对 一个ontology产生影响。除此之外,它还有良好的 教程软件。

Ontosaurus Ontosaurus是一个可以对用LOOM编写的知 识库进行浏览的Web浏览器。Ontosaurus的 文库中只有少量可以使用的ontology。 这种工具对初级用户来说不易于使用,且 一个ontology一次只能被一个用户编辑。 Ontology可以用不同的语言输入或输出。

WebOnto 用WebOnto构建的ontology是用OCML (Operational Conceptual Modelling Language:计算概念建模语言)编写的, OCML是一种图形语言。WebOnto没有输 出功能,任何人一次只能编辑一个ontology (当用户换人时这个ontology将被锁定)。

PROTÉGÉ PROTÉGÉ也拥有大型的用户团体,但是这 种工具只能局部安装。PROTÉGÉ v1.7能进 行ontology的创建,并且为了录入ontology 实例,系统会自动生成知识获取工具。 PROTÉGÉ没有协作或输出功能。对初级用 户而言,它非常易于使用,但它本身没有 ontology文库。PROTÉGÉ还提供ontology的 图形表达方法。

OntoEdit OntoEdit是分层构建ontology系统工程的工作平台, 是一种ontology工程环境,它利用图形手段支持 ontology的开发与维护。 OntoEdit构建在一个强大的内部ontology模式之上。 这一内在的ontology模式可以通过XML的利用得到 串行化(一个接着一个),XML支持内部文档的 处理。 OntoEdit的词形变化表尽可能地支持面向概念、关 系和公理的表达语言中立建模。包含在ontology中 的几种图形视窗支持ontology工程周期的几个不同 的建模阶段。

本体(Ontology) Ontology的概念 Ontology的作用 Ontology的类型 Ontology的组成 当前研究存在的问题

当前研究存在的问题 迄今为止,已有为数不少的ontology构建工 具和方法体系,但没有一个是完全成熟或者 已经拥有了权威团体客户的。因此,没有一 种成为现行标准。Web上也未出现一个非常成 熟完善的、可以进行真正的自然语言检索的, 基于ontology的语义检索工具。目前存在的 问题归结起来有以下几点: (1)缺乏构建Domain ontology(领域本体)的 成熟流程、方法和标准规范。

(2)目前的很多基于ontology的系统其应用目的是 针对知识管理、语义网络和人工智能等方向,而针 对自然科学的ontology系统构建相对较少。这是由 于ontology的研究源于AI领域,而构建Domain ontology不仅需要AI领域的本体工程师(ontology engineering),更加需要领域专家参与知识体系的 构造、组织和完善,而这二者往往由于各自的专业 背景和目的不同而难以达成过程上的统一。 (3)即使是构建Domain ontology,由于专业不同、 学科背景不同,应用目的不同,也会带来构建方式 和工艺流程上的差别,所以每个领域Domain ontology的构建均有方法体系上的特殊性(即专业 特色)。即使构建同一领域的Domain ontology,由 于人员背景、思考角度不同,应用的框架体系不同, 也会生成不同结果。

所以,ontology的研究仍停留在理论研究日 趋成熟,应用研究相对滞后的阶段。 (4)研究ontology构建的技术体系与研究检索的 技术体系之间存在脱节问题。使得ontology对检 索系统的嵌入(登录)成为难点。这还导致了 ontology工程的生命周期不能顺利进行。 (5)目前,国内还未有基于ontology检索系统投 入运行的报道。 (6)构建基于ontology的检索系统,其瓶颈在于 基于ontology的语义标引仍停留在极为耗时的手 工标引阶段。某些自动化或半自动的标引手段未 能达到人工标引的精细水平。 所以,ontology的研究仍停留在理论研究日 趋成熟,应用研究相对滞后的阶段。

语义网(Semantics Web) 语义网概述 RDF 本体(Ontology) 语义网描述语言

语义网描述语言 RDF OIL DAML OWL

RDF RDF具有较强的表达能力,但作为语义网描述 语言,RDF还存在不足。 RDF没有说明包含特性,尽管名字空间 (namespaces)允许文档引用在另一个文档中定义 的术语,但没有明确是否包含引用术语的定义。 RDF没有提供定义公理的机制,而公理可以提供更 强的语义,限制术语的可能语义,推导出没有明 确表示的信息,匹配相同概念的不同表示。如有 用的公理可定义属性subOrganization具有传递性 或ParentOf和childOf属性是相互可逆的。

RDF的另一个潜在问题是尽管它提供了修改 schema的方法,它无法完全适应web迅速变化的特 点。从本质上讲,schema的每个版本都拥自己的 URI,被认为是资源的一个完全不同的schema,仅 通过rdfs:subClsssOf 和 rdfs: subProPertyOf 与 class 和ProPerty的原始 定义联系。各版本间没有建立真正的等价关系。 如参考某个被修改schema的schema和资源要反映 这个变化必须分别进行修改使用新的URI。而且 RDF没有版本控制。

OIL OIL Ontology Interchange Language 或 Ontology lnference layer(本体推理层) 是在Web上描述本体的语言。OIL的语义基于描述 逻辑(description logic),语法建立在RDF之上。 OIL的设计目标之一就是尽量与RDF应用结合,因 此,大多数RDF Schemas是有效的OIL ontology, 能够被RDF处理器所理解。与RDF不同的是OIL具有 良好定义的语义。

OIL可分为四个层次,高层建立在低层上,在低层 上增加功能。 OIL的核心是基本RDFS。 标准OIL在核心OIL层增加了一系列的描述逻辑原语,是目前OIL工作的核心。 实例OIL(Instance OIL)应用RDF描述实例,增加了模型实例的能力。 Heavy OIL是一个未定义的层,用来包含未来对语言的扩充。 这种分层的方法使得应用可以用语言预定子集来 管理复杂的OIL。

OIL建立在基本的RDF、类、属性原语上,有 两类基本类: 原语类和定义类 原语类是普通的RDF类 定义类为成员提供必要的和充分的条件。 定义类要求使用类表达式,布尔表达式是类 和槽限定的布尔组合。 OIL提供的标准布尔操作包括oil:AND、oil: OR和oil:NOT。 槽限定用于限制类的实例必须是满足某些范 围限制的属性域实例。

oil:HasValue限定说明槽是特定类表达式的 一个成员,必须至少有一个值。 槽限定包括 oil:HasValue oil:ValueType oil:MaxCardinality和oil:MinCardinality。 oil:HasValue限定说明槽是特定类表达式的 一个成员,必须至少有一个值。 oil:ValueType限定说明槽的所有值必须是特 定类表达式成员。 势限定( oil:MaxCardinality和oil: MinCardinality)说明对于特定槽至多(至少) 存在的实例值。 oil:hasProperty用来指出限定应用的属性, oil:hasClass用于指明限定的类表示。

OIL槽是RDF属性,槽定义可使用RDF结构如 rdts: subelassOf、 rdfs: domain和 rdts: range。 oil:inverseRelationOf属性说明两个属性是逆 反关系。 如果属性是oil:TransNveProPerty类的实例,则 属性是传递的。 如果属性是oil:SymmetricProPeny的子类,则它 是对称关系。

除了定义类和槽,OIL ontology能用元 数据、输入模块描述自身并提供规则库。 标准元属性集合基于都柏林核心集,包 括ontology名、ontology作者等。 输入机制使用XML名字空间,在这方面 和RDF具有同样的缺憾。 规则库试图为ontology提供公理和全局 限制,但此结构目前还未定义。

OIL的优势在于以描述逻辑为基础。 缺欠 如果两个ontology在定义中使用相同的术语集,自 动得出包含关系来合并ontology。 由于实例化可引起语义网上的逻辑不一致,这方面 更难以控制,目前还没有处理这种不一致的方法。 比如,如果Person类为marriedTo槽定义oil: maxCardinality为1,那如何处理不同的文档中都说 明不同的人和Mary结婚呢? OIL的另一个缺陷继承自RDF:没有明确的输入机制, 相对ontology发展支持不充分。 OIL还不能合成ontologies所需的清晰匹配。比如 OIL不能表示类和属性的同义,不能表达同一概念的 不同结构间的匹配。

DAML DAML(DARPA Agent Markup Language) 是DARPA的主要项目,有 多个学术和工业组织参加。 DAML力图包括RDF、OIL等语义网语 言的优点。 DAML的最早版本称为DAML—ONT, 但后来与OIL紧密结合形成了DAML+ OIL。 下面如不明确说明DAML指DAML+ OIL。

和OIL一样,DAML建立在RDF上,以描述逻 辑为基础。 daml:intersectionOf daml:unionOf 和 daml:complementOf 这些属性提供类表示的和取、析取和否定。

DAML属性限定由daml:Restriction类 指示,包括 daml:onProperty属性 说明被限定的槽和有关限定的信息, daml:toClass属性 说明槽的所有值必须是特定类表示的成员。 daml:hasClass属性 说明槽的至少一个值必须是特定类成员。

DAML还有 daml:hasValue属性 说明槽的一个值必须是特定值。 和OIL一样,DAML包括势限制daml: minCardinality和daml:maxCardinality, 由于DAML构成限定的方法不同,因此需要 daml:hasClassQ daml:maxCardinalityQ和 daml:minCardinalityQ属性 用于特定的类表示。

DAML也提供定义属性原语。除了RDF本身所 有的原语,DAML增加了daml:inverseOf属性 和danml:TransitiveProperty类,这一点和 OIL一致。 daml:UniqueProperty和 daml:UnambiguousProperty类 分别说明属性每个实例只有一个值和一个值只属于一个实例。

DAML的daml:imports类是传递的,说 明输入文档的定义也使用当前ontology, DAML可扩展ontology。 DAML使用XML名字空间提供名字,名字 空间声明和daml:imports声明间有冗 余。

DAML的daml:equivalentTo属性用来说明两 个资源相同。 由于类和属性都是资源,这可被用来说明其 他类。因此daml:equivalentTo提供了重命 名功能及说明两个实例相同的能力,后者在 Web上非常有用,因为网上资源以URL来标识, 不同的URL经常指向相同的资源,不同的用户 可能是用不同的ID值指向相同一资源,使用 daml:equivalentTo,两个资源的内容可被 有效的合并。

daml:versionInfo属性允许ontology 提供版本信息。但目前该属性的内容还 未定义,不能用来自动决定ontologies 的版本,而且没有办法指明向后兼容版 本。 DAML还包含对XML Schema数据类型的支 持。所有的数据类型被看成是特殊的类, 每一数据类型有唯一的由其资源文档的 URL和名字构成的唯一标识。

因为DAML基于描述逻辑,它同样具有 OIL的优点。又因为它也建立在RDF之上, 也具有RDF的缺陷

OWL OWL( Web Ontology Language) W3c的标准 在表达含义和语义方面,OWL比XML、RDF和RDF-S 有更多的表达手段,因此在Web上表达机器可理解 内容的能力也比这些语言强。 OWL是DAML+OIL Web本体语言的修改版,并吸取 了在DAML+OIL的设计和应用中得到的经验教训。

OWL语言标准有六个: OWL概述 (http://www.w3.org/TR/owl-features/)(OWL Overview), OWL指南 (http://www.w3.org/TR/owl-guide/)(OWL Guide) 通过一个扩展的例子说明如何使用OWL语言。同时也给出了这些文档中用到的术语的解释; OWL参考 (http://www.w3.org/TR/owl-ref/) (OWL Reference) 以一种系统的和简洁的方式(仍是非正式地)描述了OWL的所有建模原语(modelling primitives); OWL语义和抽象语法文档(http://www.w3.org/TR/owl-semantics/) 是对这个语言的最终的、形式化的规范性定义; OWLWeb本体语言测试用例文档(http://www.w3.org/TR/owl-test/) 包含了这个语言的一个大量的测试用例集合; OWL用例和需求文档http://www.w3.org/TR/webont-req/) 包含了一个Web本体语言的用例集合和关于OWL的需求集合。

OWL提供了三种表达能力递增的子语言,以分别用 于特定的实现者和用户团体 OWL-Lite OWL-DL OWL-Full 主要的分类依据就是它们的表达能力。其中, OWL-Lite是表达能力最弱的子语言,OWL- Full具有最强的表达能力,而OWL-DL的表达 能力则在它们之间。我们可以认为OWL-DL 是OWL-Lite的扩展,而OWL-Full是OWL-DL 的扩展。

OWL-Lite 从语法上来说,OWL-Lite是三个之中最简 单的一个,当本体中类的层次结构很简单, 并且只有简单的约束(constraint)时适合 使用它来描述本体。例如,在需要把一个 已存在的辞典(thesauri)移植到另一个差 不多简单的概念层次时,OWL-Lite可以做 得又快又好。

OWL-DL 和OWL-Lite相比,OWL-DL的表达能力要丰富许 多,它的基础是描述逻辑(Description Logics,即 DL的由来)。 用于支持那些需要最强表达能力而需要保持计算 完备性(computational completeness,即所有的结 论都能够确保被计算出来)和可判定性 (decidability,即所有的计算都能在有限的时间内 完成)。 OWL DL包括了OWL语言的所有语言成分,但使 用时必须符合一定的约束,例如,一个类可以是 多个类的子类时,但它不能同时是另外一个类的 实例。

OWL-Full OWL-Full是OWL的三种子语言中表达能力最强的 一个 支持那些需要尽管没有可计算性保证,但有最强 的表达能力和完全自由的RDF语法的用户。例如, 在OWL Full中,一个类可以被同时看为许多个体 的一个集合以及本身作为一个个体。它允许在一 个本体增加预定义的(RDF、OWL)词汇的含义。 这样,不太可能有推理软件能支持对OWL FULL的 所有成分的完全推理。

在表达能力和推理能力上,每个子语言都是 前面的语言的扩展。这三种子语言之间有如 下关系成立,但这些关系反过来并不成立。 每个合法的OWL Lite本体都是一个合法的OWL DL本体; 每个合法的OWL DL本体都是一个合法的OWL Full 本体; 每个有效的OWL Lite结论都是一个有效的OWL DL结论; 每个有效的OWL DL结论都是一个有效的OWL Full 结论。

OWL本体的组成 OWL有 个体(Individual) 属性(Property) 类(Class)

个体(Individual) 个体代表(领域中)我们实际感兴趣的那些对象, OWL不使用唯一命名假设(Unique Name Assumption,UNA),也就是说,两个不同的名 称可以对应到同一个个体。例如“伊丽莎白女王”、 “女王”和“伊丽莎白.温莎”可能都对应同一个人。 在OWL里,必须明确的表达个体之间是否为相同 的,否则它们可能相同也可能不相同。 个体(Individual)有时也被称作实例(Instance), 个体相当于类的实例。

属性(Property) 属性是个体之间的二元关系,也就是说,属性把 两个个体连接在一起。例如 属性hasSibling(兄妹)可能会把Matthew和Gemma这两个个体连接起来, 而属性hasChild会把Peter和Matthew这两个个体连接起来; 属性可以有反向属性(Inverse),例如hasOwner的反向属性是isOwnedBy; 属性也可以被限制为只能拥有一个值,即所谓的函数属性(functional); 属性还可以是具有传递性(transitive)或是对称的(symmetric)。

类(Class) OWL中的类代表一些个体的集合,OWL使用形式 化(数学的)的方法精确描述出该类中成员必须 具有的条件,例如,领域中全部猫的个体都属于 Cat类。 类可以通过继承关系组成层次结构,子类是父类 中的特殊情况,例如考虑Animal和Cat这两个类, Cat可以是Animal的一个子类(即Animal是Cat的父 类),这就表示了:所有的猫都是动物,所有Cat 类的成员都是Animal类的成员,如果你是猫那么你 也是动物,Cat类被Animal类所包含,等等。 OWL-DL的一个重要特征就是父类和子类之间的 (包含)关系可以被推理机自动计算出来。

作业(二选一) 使用任意一种Web Services实现的工具 (例如Xfire、AXIS2)实现一个简单的 “Hello, World”Web Services,作业应 当包括相关的实现软件代码以及对应的 WSDL。 使用RDF及vcard命名空间描述你本人的 姓名、昵称及电子邮件,作业应当以 RDF/XML格式提交。