2
总第 142期
3
《现代图书情报技术 》 2006年 第 10 期 情报分析与知识发现技术
基于 Protégé的本体建模方法研究
———以学位论文服务系统为例
王 莉
(中国科学技术信息研究所 北京 100038)
【摘要 】 在介绍本体与 Protégé基本知识的基础上 ,通过学位论文服务系统的本体建模案例 ,提出建模过
程中应该遵循的原则 、步骤以及需要注意的问题 。
【关键词 】 本体 学位论文服务系统 Protégé 【分类号 】 TP393
A Study on M odeling On tology Ba sed on Protégé
———Tak ing the D isserta tion Serv ice System a s an Exem ple
W ang L i
( Institu te of S cien tific & Techn ica l Inform a tion of Ch ina, B eijing 100038, Ch ina)
【Abstract】 This paper develop s a dissertation service Ontology with Protégéstep by step, and p rovides rules,
methods, p roblem s during modeling Ontology.
【Keywords】 Ontology D issertation service system Protégé
本体来源于哲学领域 ,被人工智能界赋予新的定义
后 ,逐渐引入各个相关领域 ,用于知识的组织 、共享和重
用 ,成为人们关心和探讨的前沿问题 。在图书情报界 ,本
体更成为关注的焦点 ,广泛探讨其在知识组织 、信息检
索 、个性化服务 、语义导航等方面的可用性 ,然而 ,这些研
究大多 局 限 在 概 念 的 界 定 和 理 论 层 面 上 。本 文 采 用
Protégé工具 ,通过构建学位论文服务系统的本体 ,探讨具
体的构建原则 、步骤以及需要注意的问题 ,希望为图书情
报界知识本体的建设提供一个实践基础 。
1 预备知识
1. 1 本体的基本建模元语
简单地说 ,本体是关于某一领域概念与概念之间关
系的规范化描述 [ 1 ] , Perez[ 2 ]等学者归纳出 5 个基本建模
元语 (Modeling Prim itives) ,包括类 ( Classes)或概念 ( Con
cep ts) 、关系 ( Relations) 、函数 ( Functions) 、公理 (Axiom s)
以及实例 ( Instances) 。
1. 2 Protégé概况 [ 3 ]
随着本体研究的深入 ,其实践工具逐渐成熟 ,主要包
收稿日期 : 2006 - 06 - 16
收修改稿日期 : 2006 - 07 - 26
及其电子化示范系统 ”(项目编号 : 2004DKA40700)的研究成果之一。
本文系科技部国家科技基础条件平台项目“学位论文标准规范
括 Protégé、OntoEdit、O ilEd、RDF Gateway等 ,其中 , Protégé
是目前比较流行的开源软件 。该软件由美国斯坦福大学
采用 Java开发 ,目前版本为 Protégé- 2000,支持 Protégé-
Frames和 Protégé- OWL 两种建模方式 ,允许用户在概念
层次上进行设计 ,不需要了解具体的本体描述语言 ,就可
以非常方便的构造本体模型 , 提供文本 、HTML、JDBC、
RDF Schema、XML Schema等多种输出格式 ,同时提供完
全的 AP I接口 ,支持插件扩展更多特殊功能 。
Protégé- 2000安装包 (目前版本为 3. 2 Beta)可以直
接从 http: / /p rotege. stanford. edu / download / download. htm l
网站免费获取 ,点击安装无须过多人工干预 。 Protégé-
2000简单易用 、完善的帮助系统以及齐全的功能大大降
低了本体构建的门槛 ,使其成为国内外众多研究机构本
体建模的首选工具 。据统计 ,目前已注册的团体用户已
有 50303家 。
在 Protégé- 2000 中 , 一个本体由 Class、Slot和 In
stance构成 。Class即类 ; Slot是 Class的属性 ; Instance则
是 Class的实例 。它们与本体的基本建模元语之间的对
应关系见表 1。
2 学位论文服务系统本体构建案例
在实际应用中 ,构建本体是很困难的 ,需要专业领
·55·
2
2
论文的描述性元数据 。学位论文提交后 ,进入数据整合加工
流程 ,需要将全文电子文档转换为 PDF格式 ,对提交表单中
没有的信息 ,如资源格式 、权限管理 、主题信息以及全文链接
等信息进行著录标引 。这一过程一方面补全描述性元数据 ,
另一方面生成若干管理元数据 。学位论文经过整合加工之后
形成文摘库和全文数据库 ,按照授权对外提供检索 、在线浏览
(前 16页 )和下载服务 。建成后的本体将在整个流程中使用 ,
涉及资源 、人与服务 。资源即学位论文 ,需要考虑论文本身的
著录特征 、相关的组织和人以及使用权限等因素 。人包括论
文提交者 、资源加工者 、最终用户等多个群体 。服务包括提
交 、审核 、发布 、检索 、下载等 ,反映了资源与人之间的联系 ,例
如 ,检索服务展现的是最终用户查找学位论文的过程 ;同样 ,
当某个人是论文作者时 ,人和学位论文之间是一种写作关系 ,
可以通过论文提交服务来体现 。
(2)知识采集
这是一个获取规范名词术语的过程 ,应该尽可能利用已
有的资源 (如相关领域的本体 、叙词表 、元数据标准 ) ,同时在
领域专家的帮助下在实际中获取名词术语并加以规范 。
在本案例中 ,我们可以利用的资源有 :《学位论文编写规
则 》①、《学位论文描述元数据著录规则 》(来源 :中国数字图书
馆标准规范项目《专门数字对象描述元数据规范 》) 、《GB
6864中华人民共和国学位代码 》、国务院学位委员会和国家
教育委员会联合下发的《授予博士 、硕士学位和培养研究生的
学科 、专业目录 》、《GB / T 7156 - 2003 文献保密等级代码与标
识 》以及《中国图书资料分类法 (第四版 ) 》。
由于这只是一个案例展示 ,因此省略了与领域专家的沟
通部分 ,但在实践中 ,领域专家的参与是非常重要且必不可少
的 。
(3)分析 、提炼采集到的知识
这个步骤需要对采集到的名词术语进行细致的分析 、归
类 ,确定类的特性以及类的等级 、类之间的关系 。在分析提炼
过程中要结合实际场景反复测试 。
①定义类 (Class)
类的定义包括名称 (Name) 、角色 ( Role) 、自然语言描述 (Docu
mentation)和约束 ( Constraints) 等方面 。其中 ,角色分为 Concrete 和
Abstract两种 ,前者可以直接定义实例 ( Instance) (但不是必须的 ) ,后
者则不能直接定义实例 ,在 Protégé- 2000 中 ,类的缺省角色为 Con
crete。一般地 ,我们把最底层子类定义为 Concrete,其他类 (顶层和中
间层类 )定义为 Abstract。
经过使用范围和使用场景的分析以及知识采集步骤 ,可以得出学
位论文服务系统的本体应该包括学位论文、人、学科等大类 ,其中人又
可细分为研究生、教师 、图书馆馆员和其他。详细定义见表 2。
① 标准草案是对《GB / T7713 - 1987科学技术报告 、学位论文和
学术论文的编写格式 》的第一次修订 ,是科技部国家科技基础条件平
台项目“学 位 论 文 标 准 规 范 及 其 电 子 化 示 范 系 统 ”(项 目 编 号 :
2004DKA40700)的研究成果之一。
《现代图书情报技术 》 2006年 第 10 期 情报分析与知识发现技术
总第 142期
域 、计算机领域等多方专家的参与 。下面以学位论文服
务系统的本体建模为例 ,从实践的角度提出构建本体过
程中应该遵循的原则 、步骤 ,并对蕴涵其中的推理机制进
行简单分析 ,同时总结了获取的经验与教训 ,用于指导实
践工作 。其中提到的建模术语源自 Protégé- 2000软件 。
表 1 本体基本建模元语在 Protégé- 2000中的实现
Perez等学者提出
的基本建模元语
类 ( Classes) 或 概
念 (Concep ts)
关系 (Relations)
函数 ( Functions)
Protégé- 2000中的元素
类 :
通过类型、自然语言定义、属性等方面加以
描述 。
类之间的关系 :
类之间的层次关系可以直接体现为父类与
子类的关系 ,其他语义关系一般通过类的属
性来展示。
推理规则 :
当属性之间存在某种逻辑关系时 ,即可建立
推理机制 ,从一个实例可以推出另一个实
例。
在 Protégé- 2000 中可以通过 Racer插件实
现推理功能。该插件可以通过 http: / /www.
racer - system s. com下载安装。
公理 (Axiom s)
一种特殊的推理
实例 ( Instances)
实例
2. 1 基本准则
不同领域的本体构造因其特殊性而不尽相同 ,因而
也不存在标准的构造方法 ,然而 ,在本体的实际建设过程
中总是有规律可循的 ,这就是所谓的指导原则 。目前比
较有代表性的是 Gruber提出的 5 条基本准则 ,包括清晰
( Clarity) 、一致 ( Coherence) 、可扩展 ( Extendibility) 、最小
编码偏差 (M inimal encoding bias)以及最小约定 (M ini
mal ontological comm itment) [ 4 ] 。在本案例中也以这 5 条
准则为指导 。
2. 2 建模步骤
(1)明确本体的目的和使用范围
在这个阶段需要弄清楚本体要概括的领域是什么 ? 为什
么要建立本体 ? 通过本体来回答什么类型的问题 ? 建好后的
用途有哪些 ? 使用该本体的用户有哪些 ? 谁来维护建好的本
体系统 ?
学位论文服务系统的本体属于应用本体 ,描述的是依赖
于特定领域和任务的概念和概念之间的关系 ,作为一个示范
案例 ,这里不需要探讨其建设目的与现实意义等问题 ,但有必
要明确其使用范围 ,这直接影响到接下来类的划分 、属性的选
择等工作 。
从学位论文服务系统的功能来看 ,应该包括网上远程提
交平台 ,电子化数据整合加工和发布平台 ,检索与下载平台等
三大部分 。网上远程提交平台指导学生按照正确的方式和步
骤完成电子版学位论文的提交流程 ,其关键是直接获取学位
·65·
《现代图书情报技术 》 2006年 第 10 期 情报分析与知识发现技术
总第 142期
表 2 学位论文服务系统本体中类的定义 (片段 )
名称
角色
描述
说明
例化时 ,一旦我们为学位论文的作者属性新建一个实例 ,该实例就会
自动出现在研究生的毕业论文属性下 ,具体关系见图 2所示。
学位论文 Concrete
人
Abstract
研究生 Concrete
教师
Concrete
图书馆馆员 Concrete
其他人 Concrete
学科
Abstract
经济学
Abstract
硕、博士研究生通过网上提
交平台发布的学位论文。
学位论文提交、加工、发布和
使用过程 中 涉 及 的 所 有 人
群。
既是学位论文的撰写者 (同
时也是提交者 ) ,也可以是学
位论文的使用者 。
既是学位论文的指导者 ,也
可以是学位论文的使用者。
既是学位论文的数据加工与
发布者 ,也可以是学位论文
的使用者。
除以上 3类人群之外的普通
用户。
源于《授予博士 、硕士学位和
培养研究生的学科、专业目
录 》。
《授予博士 、硕士学位和培养
研究生的学科、专业目录 》中
的 1级类目 。
理论经济学 Concrete “经济学 ”下的 2级类目
……
……
……
学位
Concrete
源于《中华人民共和国学位
代码 》
“人 ”的子类
“人 ”的子类
“人 ”的子类
“人 ”的子类
在 标 准 文
件 中 学 科
分 为 3 级
类目 ,将其
中 的 1、2
级 依 次 作
为子类 ,第
3 级 作 为
Instance。
②确定类之间的关系
类与类之间的关系见图 1,其中矩形表示类 ,单向直箭头表示关
系 ,箭头上是关系的名称 ,文本标注框表示类的属性 (弧形箭头与类相
连 ) 。
图 2 Inverse Slot关系限定示例
说明 :
1)只有当一个 Slot的类型为 Class或 Instance时 ,才能设置其 In
verse Slot限定 , 而且限定对象也只能是同样为 Class或 Instance 的
Slot。
2) Inverse Slot提供的是冗余信息。在本例中 ,通过学位论文可以
展现作者信息。同样 ,从研究生的角度 ,也可以展现学位论文信息。
这种冗余设计虽然不符合传统的关系数据库设计范式 ,但是可以充分
揭示类的属性。
3)按照本体构建的最小约定原则 ,本案例并没有实际采用 Inverse
Slot限定 ,这里的示例只是展示其用法。
在进行属性定义的过程中 ,我们发现“人 ”这个大类中具有单位
名称、通信地址、邮政编码等属性 ,这些属性都与机构相关 ,且重复出
现 ,因此 ,我们抽象出一个新的类 :“机构 ”。同时 ,我们还发现“系统
权限 ”和“语种 ”这两个新类。表 3 展示了学位论文服务系统类的属
性定义 (片段 ) 。
(4)创建实例 ,进行有效性验证
这是一个评估的过程 ,需要根据需求描述 、用户反馈等对
建成的本体进行评价 ,在本案例中创建了若干实例 ,具体评价
过程省略 。
构建本体的过程是一个不断更迭 、逐步精练的过程 。经
过以上操作步骤之后形成的最终本体图如图 3所示 。
图 1 学位论文服务系统的类结构草图
③定义类的属性 ( Slot)
属性的定义包括名称 (Name) 、描述 (Documentation) 、数据类型
(Value Type)以及关于值的限定等方面。数据类型 (Value Type)与数
据库中字段类型相似 ,可供选择的类型有 : Any、Boolean、Class、Float、
Instance、Integer、String、Symbol。值得注意的是 ,属性的取值可以是本
体中已经定义的某个类 ,也可以是某个类的实例。而对于具体取值 ,
Protégé- 2000提供了很多可选的设置 ,如允许值的数量 ( Cardinality) 、
固定值 ( Temp late Value) 、缺省值 (Default Values) 、逆转属性 ( Inverse
Slot)等。其中 ,逆转属性比较特殊 ,简单地说 ,学位论文类具有作者这
个属性 ,研究生类具有毕业论文这个属性 ,作者与毕业论文之间是撰
写者与被撰写的关系 ,我们可以将它们设置为 Inverse Slot,这样 ,当实
图 3 利用 Protégé- 2000构建的学位论文服务系统本体
利用 Protégé- 2000提供的输出功能 ,可形成 OWL 文件 ,
以下是该文件的片段 。
< ? xm l version = " 1. 0" ? >
< rdf: RDF
·75·
∃
《现代图书情报技术 》 2006年 第 10 期 情报分析与知识发现技术
总第 142期
表 3 学位论文服务系统本体中类的属性定义 (片段 )
xm lns: rdf = " http: / /www. w3. org/1999 /02 /22 - rdf - syntax -
所属类
名称 基本限定 类型
说明
学位论文
题名
Required
String
( 来 源 :
《学位论文
描 述 元 数
据 著 录 规
则 》)
作者
Required
Instance of
研究生
中图
分类号 Required
String
密级
Required
Symbol
……
……
……
采用《中国图书资料
分类法 (第四版 ) 》规
范
取 值 范 围 : 公 开 、内
部、秘密、机密、绝密
(采用《GB / T 7156 -
2003 文 献 保 密 等 级
代码与标识 》)
姓名
Required
String
所属机构
人
使用权限 Required
Instance of
机构
Instance of
系统权限
……
……
……
研究生 就读院系 Required
String
继承“人 ”的属性
……
(“人 ”的其
他 下 级 类
目 )
机构名称 Required
机构
机构地址 Required
……
……
……
String
String
……
学科名称 Required
String
学科代码 Required
String
继承“学科 ”的属性
学位名称 Required
String
学位代码 Required
String
语种名称 Required
String
语种代码 Required
String
系统权限
名称
系统权限
代码
Required
String
Required
String
学科
(来源 :《授
予博士、硕
士 学 位 和
培 养 研 究
生的学科、
专 业 目
录 》)
……
(“学科 ”的
下级类目 )
学位
(来源 :《中
华 人 民 共
和 国 学 位
代码 》)
语种
(采用 RFC
1766 所 定
义 的 语 种
代码规范 )
系统权限
·85·
ns#"
xm lns: xsd = " http: / /www. w3. org/2001 /XMLSchema#"
xm lns: rdfs = " http: / /www. w3. org/2000 /01 / rdf - schema#"
xm lns: owl = " http: / /www. w3. org/2002 /07 /owl#"
xm lns = " http: / /www. owl - ontologies. com / unnamed. owl#"
xm l: base = " http: / /www. owl - ontologies. com / unnamed. owl" >
< owl: Ontology rdf: about = " " / >
< owl: Class rdf: ID = "学位论文 " >
< rdfs: subClassOf >
< owl: Restriction >
< owl: hasValue df: datatype = " http: / /www. w3. org/
2001 /XMLSchema# string" >学位论文 < /owl:
hasValue >
< owl: onProperty >
< owl: FunctionalProperty rdf: ID = "资源类型 " / >
< /owl: onProperty >
< /owl: Restriction >
< / rdfs: subClassOf >
< rdfs: comment rdf: datatype = " http: / /www. w3. org/2001 /
XMLSchema#string" >硕 、博士研究生通过网上提交平
台发布的学位论文。 < / rdfs: comment >
< rdfs: subClassOf rdf: resource = " http: / /www. w3. org/
2002 /07 /owl#Thing" / >
< /owl: Class >
< owl: ObjectProperty rdf: ID = "作者 " >
< rdfs: comment rdf: datatype = " http: / /www. w3. org/2001 /
XMLSchema#string" >论文作者 < / rdfs: comment >
< rdfs: domain rdf: resource = " #学位论文 " / >
< /owl: ObjectProperty >
…… (省略 )
< / rdf: RDF >
< !
-
- Created with Protege (with OWL Plugin 2. 2, Build 311)
- >
http: / /p rotege. stanford. edu -
2. 3 推 理
至此 ,本案例只是用类 、属性以及类之间的关系 (通
过属性限定来展现 )来表达学位论文服务系统中的知识 ,
给定一篇学位论文 ,我们可以把与该论文相关的作者 、导
师 、数据加工人员以及使用人员等各种信息聚合到一起 。
单纯从信息聚合的角度来看 ,采用关系型数据库也可以
达到同样的效果 ,而推理才是本体的真正价值所在 。
建立了本体之后 ,选择 Protégé- 2000 菜单中 OWL
> Classify taxonomy. . (也可以点击标签上方的 Classify
taxonomy图 标 ) , 可 以 连接 Racer 推 理 机 (需 要 事 先 安
装 ) ,推理机会根据类的定义进行推理 。这里对推理的实
现不作具体介绍 ,只是简单分析本案例中可能存在的某
些推理机制 。
《现代图书情报技术 》 2006年 第 10 期 情报分析与知识发现技术
总第 142期
一般来说 ,推理有三种基本模式 ,如图 4所示 。
图 4 三种基本推理模式
在本案例中 ,人的角色与系统使用权限之间存在着
第一种逻辑关系 ( IF - THEN ) :
IF 普通用户 THEN 可检索学位论文
IF 论文 A的提交者 /作者 THEN 可删除该论文
同样 ,论文密级与权限之间也存在类似的关系 :
IF 论文 A属于机密 THEN 不允许用户浏览、下载
2. 4 经验与教训
笔者通过具体构建学位论文服务系统的本体 ,获得
若干经验与教训 ,总结如下 :
(1)领域专家的参与非常重要 ;
(2)尽可能利用已有的资源 ;
(3)并不是所有的名词术语都需要在本体模型中表达 ,
我们只需要表达那些与所需解决任务相关的名词术语 ,因此 ,
在建立本体之初必须反复分析问题域 。
(4)类代表领域中的概念 ,不管类名如何变化 ,指的都是
同一个概念 ,因此 ,在描述某个类的时候 ,如果存在多个同义
词可选 ,可以选择其一作为类名 ,其他作为类的定义 。
(5)一个类可以看作具有共同属性的事物的集合 ,这个
集合的规模应该适度 。如果集合中只有一个元素 ,那么它的
存在可能是没有必要的 ;如果集合中的元素很多 ,则意味着有
可能需要引入一个新的子类 。值得注意的是 ,如果并不存在
某种自然的划分标准 ,则不需要建立子类 ,可以直接采用罗列
的方法 。
例如 :对“学位 ”类进行分析时 ,发现“学位 ”包括“名誉博
士 ”、“博士 ”和“硕士 ”,“博士 ”与“硕士 ”又可进一步划分 。
而“名誉博士 ”下已经没有下级类目了 ,如果将之作为一个子
类是没有必要的 。因此 ,本案例采用不再细分“学位 ”类的处
理方法 。对“学科 ”类而言 ,包括了 12个下级类目 ,这些类之
间不存在某种显性 /隐性的划分标准 ,本案例则采用了罗列的
处理方法 。
(6)子类在继承父类所有属性的同时 ,可以定义自己特
有的属性 ,也可以不定义 。例如 :“其他 ”是“人 ”的子类 ,本案
例中并没有为其定义特殊的属性 ,而“教师 ”同样作为“人 ”的
子类 ,则增加了“职称 ”、“著作与成就 ”等特有属性 。为类 /子
类定义哪些属性是根据具体需要来判断的 。
(7)在确定类与类的层次关系时 ,并不存在某种唯一标
准 ,但层次关系的合理性可以通过实例来进行验证 ,简单地
说 ,子类的每一个实例必定也是父类的实例 。
(8)在定义属性的时候应该将其放在最概括的类里 ,通
过类与子类之间的继承关系作用于下级类 。
(9)在建立实例的时候 ,可能发现它可以属于多个类 (排
除父子类关系 ) ,这并不一定意味着类的划分存在问题 ,因为
事物是多重性的 ,这种多重列举正是为了充分揭示同一事物
的多重属性 。
3 结 语
本文采用 Protégé工具 ,通过构建学位论文服务系统
的本体 ,逐步探讨具体的构建原则 、步骤 ,以及需要注意
的问题 。然而 ,建立本体只是一个开端 ,利用本体的信息
聚合特性与推理机制 ,我们可以构造真正的知识库 ,解决
实际问题 。
参考文献 :
1 刘炜 ,李大玲 ,夏翠娟. 元数据与知识本体 ,图书馆杂志 , 2004, 23
(6) : 50 - 54
2 A. Gomez Perez, V. R. Benjam ins: App lications of ontologies and
p roblem - solving methods. A I - Magazine, 1999, 20 (1) : 119 - 122
3 http: / /p rotege. stanford. edu (Accessed Jun. 1, 2006)
4 本体 ———知识表示的艺术. http: / /www. dm research. net/ htm l/ con
intelligence /1000001337. php ( Accessed May. 31,
tent/ artificial -
2006)
(作者 E - mail: wangli@ istic. ac. cn)
编辑部启事 :当前随着我国市场经济的推进 ,科技期刊市场化发展已初现端倪 。本刊编辑部也同国内广大科技
期刊同行一样 ,正进行着一些期刊市场化发展的探索 。然而 ,最近本刊发现社会上一些别有用心的人 ,正利用本刊的声
誉 、威望 ,非法承诺以发稿名义进行有偿服务 。他们的活动极大的损害了广大读者 、作者的利益 ,也败坏了本刊的声誉 ,
扰乱了图书情报领域多年来形成的良好学术氛围 。为此 ,本刊编辑部郑重声明 ,编辑部无论是过去还是将来 ,在论文发
表上绝不做权钱交易 ,绝不因小利而承诺给质量达不到发表水平的稿件开绿灯 。
恳请广大读者 、作者同本刊编辑部一道 ,自觉廉洁自律 ,共同维护本专业领域已形成的良好学术风气 。
(编辑部 )
·95·