基于Jena的本体构建方法研究-计算机工程

合集下载

Jena_中文教程_本体API(经典)

Jena_中文教程_本体API(经典)

Jena 简介一般来说,我们在Protege这样的编辑器里构建了本体,就会想在应用程序里使用它,这就需要一些开发接口。

用程序操作本体是很必要的,因为在很多情况下,我们要自动生成本体,靠人手通过Protege创建所有本体是不现实的。

Jena 是HP公司开发的这样一套API,似乎HP公司在本体这方面走得很靠前,其他大公司还在观望吗?可以这样说,Jena对应用程序就像Protege对我们,我们使用Protege操作本体,应用程序则是使用Jena来做同样的工作,当然这些应用程序还是得由我们来编写。

其实Protege本身也是在Jena的基础上开发的,你看如果Protege 的console里报异常的话,多半会和Jena有关。

最近出了一个Protege OWL API,相当于对Jena的包装,据说使用起来更方便,这个API就是Protege的OWL Plugin所使用的,相信作者经过OWL Plugin的开发以后,说这些话是有一定依据的。

题目是说用Jena处理OWL,其实Jena当然不只能处理OWL,就像Protege 除了能处理OWL外还能处理RDF(S)一样。

Jena最基本的使用是处理RDF(S),但毕竟OWL已经成为W3C的推荐标准,所以对它的支持也是大势所趋。

好了,现在来点实际的,怎样用Jena读我们用Protege创建的OWL本体呢,假设你有一个OWL本体文件(.owl),里面定义了动物类(/ont/Animal,注意这并不是一个实际存在的URL,不要试图去访问它),并且它有一些实例,现在看如下代码:OntModel m = ModelFactory.createOntologyModel();File myFile = ...;m.read(new FileInputStream(myFile), "");ResIterator iter = m.listSubjectsWithProperty(RDF.type, m.getResource("http:// /ont/Animal"));while (iter.hasNext()) {Resource animal = (Resource) iter.next();System.out.println(animal.getLocalName());}和操作RDF(S)不同,com.hp.hpl.jena.ontology.OntModel是专门处理本体(Ontology)的,它是com.hp.hpl.jena.rdf.model.Model的子接口,具有Model的全部功能,同时还有一些Model没有的功能,例如listClasses()、listObjectProperties(),因为只有在本体里才有“类”和“属性”的概念。

本体构建研究综述

本体构建研究综述

1 引言
本体 ( tlg ) 一个 源 于哲 学 的概 念 , 的 On oo y 是 指
2 本 体 的 构 建
本 体构 建 是 本 体 应 用 的基 础 , 实 现 信 息 交 是 换 、 享 , 决语 义 冲突 的基础 , 过 构建 统 一 的术 共 解 通
语 和概 念 , 实现 知 识 共 享 , 为异 构 系 统 问 的通 讯 提
应 尽力 用逻 辑公 理表 达 ; 义 应该 尽 可 能 的完 整 ; 定 所 有定 义应 该用 自然语 言 加 以详 细说 明。
优 点就 是便 于半 自动或 自动 化构 建 本体 , 大 提高 大 了构建 速度 。而 运 用 非 结 构 化 知识 构 建 本 体 往 往 需 要大 量人 工参 与 , 虽然 本 体 构 建 质 量 较 好 , 是 但
上 述五条 原 则 给 出 了构造 领域 本 体 的基 本 思 路 和框 架 , 是 明显 的不 足 之处 就是 它们 所 反 映 的 但 内容较 模糊且 难 于把握 。实际本 体 构建 过 程 中 , 以 上 五原 则甚 至可 能有不 一致 的情 况 , 体开 发 者需 本
要 权衡 各原 则 , 要 时 可 能还 要 参 照其 他 原 则 , 必 需 要 灵活 运用 本体 构建 原则 才能构 建 高质量 的本 体 。 2 2 本体 构建 的知 识来源 .
理 以及 只定义 应用 所需 的基 本词 汇来保 证 。
P oee rtg 本体 构建 工 具 的一 种 领 域 本 体 构建 方 法 。

共 包括 7 步骤 , 个 因此 被称 为七 步法 :1 )确定 知
识本 体 的专业 领域 和 范 畴 ;2 )考 查 复用 现 有 知 识 本体 的可 能性 ;3 )列 出本 体 中 的重 要 术 语 ; )定 4 义类 ( ls) Cas和类 的等 级 ( 层次 ) 系 ;5 义 类 的 体 )定

计算机信息检索中的本体构建研究

计算机信息检索中的本体构建研究

1 本 体 建 模 方 法 及 中 文本 体 构 建
1 . 1 本体 建模 方 法
大 的网络 资源 库 为 处 于 信 息 化 之 中 的人 们 提 供
了前所 未 有 的机 遇 . 信 息技 术 ( I n f o r ma t i o n T e c h —
对 同一领 域 , 同一 事 物 , 不 同 的研 究 者 建 立
所定 义 的公理 以及 用 自然 语 言 进 行 说 明的 文 档 都应 当具 有一 致性 .
共 同理 解 , 确定 该 领 域 内共 同认 可 的词 汇 , 并 从
不 同的层 次 的形 式 化 模 式 上 给 出 这 些 词 汇 ( 术 语 )和词 汇 间相互关 系 的 明确定义 . 领 域本 体 ( D o ma i n O n t o l o y) g 是 专 业 性 的本
[ 收稿 日期] 2 0 1 2—1 2—3 0
[ 基金项 目] 重庆市 自然科学基金项 目( C S T C 2 0 1 l j j A 4 0 0 1 1 ); 重庆市教委科技项 目( K J 1 1 1 2 1 6 ) .
体, 描述 的是 特定 领域 中的概念 和 概念 之 间 的关
系, 提供 了某 个专 业学 科领 域 中概 念 的词 表 以及
概 念 的描述 不 应 该 依 赖 于 某 种 特定 的符 号层 的 表 示 方法. 因为 实际 的系统 可 能采 用不 同的 知识
表 示方 法 .
概念 间的 关 系 , 或 在 该 领 域 里 占主 导 地 位 的 理 论, 能够 独立 存在 和被使 用 J .
得 到很 大程 度 的反 映” 这一假 设 对 本体 中的概 念 进 行 进 化 , 结 合 分 类 主题 词 表 及 百科 等 通 用 的知识 库 中的概 念 , 半 自动 构造 了一 个计 算机技 术领 域 的本 体 , 消除 了构建 本体 过程 中细节的

基于Jena的网状知识推理与应用研究

基于Jena的网状知识推理与应用研究

来组 织 和描述 网状 知识 ,因为该 语 言具有 面 向对象 的思 想 , 只需要 关 注与所 建对 象有 直接 联 系 的对 象 : 属性 设 置灵 活 ; 易扩 展 ; 信 息冗 余 : 够从 原 有 容 无 能 知 识 中推导 出来 的知识 不 用再行 组 织 , 更关 键 的是 。
图 2 常 见 的 网状 知识 粳 型
在 图 2中 , B、 A、 C属于 步 骤前 的准 备工 作或 者 要 素 , 为基 础层 ; 归 步骤层 中是 由一 系列具 有先 行后 继关 系 的步骤 组成 ; 顶层 是 目标 层 , 最 是我 们所 要达 到 的 目标 。 若要 对此 网状知识 模型 进行全 方位推 理 , 至少要 分 别在 各层 之 间设 置 两个具 有对 称关 系 的属
作 者 简 介 : 桢 (9 1 )女 , 林 18 一 , 本科 , 教 , 究方 向 为信 息 管理 系统 的应 用 。 助 研
9 4
21 0 0年 4月

桢 : 于 Jn 基 e a的 网 状知 识推 理 与 应用 研 究
第 4期 ( 1 0期 ) 总 5
后 续 ,代 表直 接后 续 ) 等 。 《 学分 析》 复变 函 > ] 如 数 是《 数》 《 变函数》 和 实 的直 接 先 行 课 程 , 复 变 函 数 》 《 是 《 变 函数 》 实 的直 接 先 行课 程 , 规 范 化 处 理 后 并 不 作 会 造成 知识 的缺 失和推 理 的错 误 , 因为 掌握 了《 变 复 函 数 》 代 表 了 掌 握 了《 学 分 析 》 知识 了 ; 3 不 就 数 的 () 能 出现 循环 。虽然 在 进行 系 统分 析 的 时候可 能会 出 现循 环 的步 骤 。 需要 新 的方 法 进行处 理 。 但

模糊Jena的研究

模糊Jena的研究
TP 0 31 中图 分 类 号
Re e c n Fuz y J na s ar h o z e
Lu u m i 0J n n W a g Yi g n n Ja epn in W i i g ’
( c o lo mp t rS in e& En ie r g o ’n Te h oo y Unv ”。Xi n 7 0 3 ) S h o fC o u e ce c gn ei fXi c n lg i. n a ’ 1 0 2 a
t i g n h i r lto s i so t n h v h u zn s n h sa i u t l c a g st ed 、 o me t ft i g .I r e o hn sa d t er ea i n h p fe a e t ef z i e sa d t i mb g iy wi h n e a h e l ml p n n s n o d rt o h
e p e st er s u c s a d t err lto a u zn s n t e we x rs h e o re n h i ea in lf zie s i h b,o eweg tta x rs e mbg iy O h rdct s n ih h te p e ss a iut ft e p e i ewa a
( c lyo ime ia gn e ig,F u t itr e ia iest 2,Xi n 7 0 3 ) Fa ut fB o dc l En ie rn o rhM l a yM dc l i Unv ri y ’ 1 0 2 a
Ab ta t Th o c psa dt errlt n hp ihet bih dwihJ n noo ya eie t id,b ttera rd s rc ec n e t n h i ea i s iswhc sa l e t e ai o t lg r n ie o s n d f u h e l wo l

专业教学资源库本体模型构建

专业教学资源库本体模型构建

Software 软件2011年第32卷 第4期国际IT 传媒品牌专业教学资源库本体模型构建*孙玉娣 裴 勇(江苏经贸职业技术学院,江苏 南京 211168)摘 要:针对当前专业教学资源库的可重用性低、难以提供智能服务等问题,本文提出构建本体专业教学资源库。

该方法将语义web 思想与本体技术引入专业资源库构建中,并以构建《计算机网络专业教学资源库》为例,阐述了构建基于本体的专业教学资源库模型的整个流程,并选用Jena 推理机,对资源语义的一致性进行检查。

研究表明,对教学资源库的框架描述上升到知识级,有利于对教学资源库的共享与语义查询。

关键词:本体;教学资源库;语义网;owl中图分类号:TP311 文献标识码:A DOI: 10.3969/j.issn.1003-6970.2011.04.034Professional Teaching Resources Libraries Ontology Model ConstructionSUN Yu-di, PEI Yong(Jiangsu Institute of Economic & Trade Technology , Nanjing 211168, China )【Abstract 】According to the requirements of being used repeatedly and supplying intelligence services on the teaching resources, this paper presented constructing professional teaching resources libraries based on ontology, the semantic web ideas and ontology technologies were introduced. With computer network professional teaching resources libraries, this paper illustrated the whole process of constructing ontology teaching resources libraries, and using Jena reasoning engine to ensure consistency of resources semantic. Since the description of teaching resources libraries corresponding to its knowledge level, so it contributes to the sharing of teaching resources and semantic inquiry.【Key words 】ontology; teaching resources libraries; semantic web; owl *校级课题项目(课题号JSJM2010091)作者简介:孙玉娣(1981-),女(汉),江苏高淳人,硕士研究生,讲师,主要研究方向:本体,知识工程;裴勇(1980-),男(汉),江苏盐城人,硕士研究生,讲师,主要研究方向:计算机网络,信息安全。

基于Jena和地理本体的空间查询与推理研究

基于Jena和地理本体的空间查询与推理研究

第18卷第5期 测 绘 工 程 V ol.18 .52009年10月 ENGINEERING OFSURV EYING AND M APPIN G O ct.,2009基于Jena 和地理本体的空间查询与推理研究李宏伟,蔡 畅,李勤超(信息工程大学测绘学院,河南郑州450052)摘 要:Jena 根据OW L 本体定义将地理数据进行R DF 资源标注,形成带有语义信息的数据,便于地理空间数据的语义查询和推理。

深入讨论Jena 在基于地理本体的空间信息查询和推理中的应用机制,将用户针对数据源的查询转换为对地理本体的查询;利用建立在逻辑基础上和空间关系基础上的地理本体,发现空间数据源中一些隐含的概念或关系。

结合实例,实现基于本体的地理空间信息查询和在自定义规则下利用Jena 推理机的空间推理。

关键词:Jena;地理本体;空间查询;空间推理中图分类号:P 208 文献标识码:A 文章编号:1006 7949(2009)05 0005 05The application of jena in spatial information query andreasoning based on geo ontologyLI Hong w ei,CAI Chang ,LI Qin chao(Inst itute of Survey ing and M apping ,Infor mation and Engineer ing U niv ersity ,Zheng zho u 450052,China)Abstract:Jena could realize RDF r esource't ag by definition of g eo o ntolo gy descripted by OWL,fo rm data w ith semantic inform ation and make sem antic query and reasoing application of g eo spatial data easily.The paper discussed Jena and its application mechanism in quer y based on onto logy ,transfered the spatial data query focus on data source to query based g eo ontolog y;discovered hiden concepts and relations in spatial data so urce using geo onto logy built on lo gic and spatial relation,given a query and reasoning example based on g eo o ntolo gy and Jena reso ning machine using self definition rules.Key words:Jena;Geo o ntolo gy;spatial query;spatial resao ning 收稿日期:2009 03 10基金项目:国家自然科学基金项目资助(40871183);河南省科技计划项目资助(072102210031)作者简介:李宏伟(1963~),男,教授,博士,博士生导师.在地理信息科学领域,研究人员越来越意识到地理本体是实现空间信息语义互操作和共享的重要手段,并以此为基础满足各层次用户对地理信息服务的需求。

基于数据分类的JENA法在CIM的应用研究

基于数据分类的JENA法在CIM的应用研究
p a t a i ain eic t nrs l h w h t h to i usd i ti a t l i ra o a l a d rci l t t .Vr ai e ut s o sta emeh d ds se n hs ri e s e s n be n c su o i f o s t c c
newo k n r a i g t a e t r .i c e s n d a r t . a Ke ywo ds r :CI ,d aparii ni g,J M " at tto n " ENA, we ys e " EC6 0 " po rs tm,I 1 7 9
0 引 言
电力 系 统 自动 化 正 不 断 向着 网络 化 、 数 字 化 和 集 成 化 的方 向 发 展 。 为 了 实现 电力 系统 中 的信 息 和 功 能共 享 , 实现 对 不 同 厂 家独 立 开 发 的 能 量 管理系统 (MS E )应 用 的 集 成 以及 对 E MS 和 其 他 系 统 的集 成 l 。由 国际 电工 委 员 会 5 ¨ 7技 术委 员
p we y tm. n ted v l me to o rsse ae n C M aamo e,i od rt m lm n e o rsse I h e eo p n fp we tm b sd o I d t d l n r e i p e e t h y o t s n a dit r t ni o rsse a dma ed t x h n ee sl teC M e sip r n p rfo t d r e ai p we t a ng o n y m n k aaec a g a i ,h I n d o t de o trm y e m a x
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

—59—基于Jena 的本体构建方法研究向 阳,王 敏,马 强(同济大学电子信息与工程学院,上海 200092 )摘 要:针对本体构建中构造方法不清晰、本体描述语言不统一、可用工具较少的难题,在Jena 的基础上提出了基于Jena 的本体构建方法。

该方法由描述类、描述属性、将属性关联到类、定义实例和加入本体维护元数据5个步骤组成,有效地解决了本体构建中的难题。

最后以一个实例验证了该方法的有效性。

关键词:本体;本体构建;JenaResearch on Jena-based Ontology BuildingXIANG Yang, WANG Min, MA Qiang(School of Electronic Information and Engineering, Tongji University, Shanghai 200092)【Abstract 】There are a lot of difficulties in the ontology building such as the unclear building methods, ununified ontology languages, lack of tools.To solve these problems, this paper presents an ontology building method with Jena. The method is composed of 5 parts: class description, property description, link of property and class, individual creation, ontology metadata adding. The validity of the method is proved with an instance. 【Key words 】ontology; ontology building; Jena计 算机 工 程Computer Engineering 第33卷 第14期Vol.33 No.14 2007年7月July 2007·软件技术与数据库·文章编号:1000—3428(2007)14—0059—03文献标识码:A中图分类号:TP311本体是对领域中的概念及概念之间联系的显式描述。

具体地说,就是要描述一个领域需要哪些概念,概念由哪些属性标识,属性又具有什么约束,概念对应于哪些实例。

在本体的构建中也存在一些问题:本体构造方法定义不清晰;本体构造语言繁多,不同语言构造出来的本体交互性弱;本体构建工具少,目前可供使用的有斯坦福大学的Protégé和HP 公司的Jena 等。

本文在Jena 基础上,提出了OWL 本体构建方法。

1 Jena 体系结构1.1 Jena 的接口功能Jena 是HP 公司开发的一个基于Java 的开放源代码语义网工具包,为解析RDF 、RDFS 和OWL 本体提供了一个编程环境及一个基于规则的推理引擎[1]。

语义网标准的核心是作为通用数据结构的RDF 图[1]。

Jena 将RDF 图作为其核心的接口。

Jena 有以下几个主要功能[2]:(1)RDF API(主要是com.hp.hpl.jena.rdf.model 包)。

可将RDF 模型视为一组RDFstatements 集合。

(2)RDQL 查询语言(主要是com.hp.hpl.jena.rdql 包)。

对RDF 数据的查询语言,可以伴随关系数据库存储一起使用以实现查询优化。

(3)推理子系统(主要是com.hp.hpl.jena.reasoner 包)。

包括基于RDFS 、OWL 等规则集的推理,也可自己建立规则。

(4)内存存储和永久性存储 (主要是com.hp.hpl.jena.db)。

Jena 提供了基于内存暂时存储的RDF 模型方法,目前仅支持MySQL 、Oracle 和PostgreSQL 的数据存储。

(5)本体子系统(主要是com.hp.hpl.jena.ontology 包)。

Jena 对OWL 、DAML+OIL 和RDFS 提供不同的接口支持。

1.2 Jena 的接口结构Jena 主要由API ,SPI 组成。

用户编程只需使用API 。

SPI 为Jena 提供核心数据结构。

Jena 库由包来管理,Jena API 以接口方式定义。

经常用到包的有:(1)com.hp.hpl.jena.rdf.model 包,可创建和操纵RDF 图,是本体API 的基础。

结构如图1所示[3]。

图1 rdf.model 包主要接口函数(2)com.hp.hpl.jena.ontology 包。

为操纵基于RDF 的本体提供了抽象接口和实现,结构如图2所示。

图2 ontology 包的主要接口函数基金项目:国家自然科学基金资助项目(70371054)作者简介:向 阳(1962-),男,教授、博士生导师,主研方向:语义网,本体,Web 挖掘;王 敏、马 强,硕士研究生 收稿日期:2006-07-25 E-mail :drxigyang@了解了这几个基本接口之后,就可以使用Jena来处理本体了。

2基于Jena的本体构建方法2.1方法步骤本体创建方法没有一个固定的模式,自上而下、自下而上、从中间向两边等创建方法有着不同的优势和缺陷。

本文在总结多种本体创建方法的基础上,提出了以Jena为工具的循环式本体创建方法,目的是为用户提供一种可参照的符合软件工程的新的本体构建思路。

用户开始定义基于Jena的本体构建方法之前,需先定义描述领域中的资源模式图,要尽量多考虑重用性,达到合理描述领域资源的效果,其步骤为:(1)确定领域范围;(2)确定领域中需要描述的概念,也称为类;(3)确定描述这些资源所需要的属性;(4)建立属性间的联系;(5)建立资源间的联系;(6)检查模式图的合理性,重复以上几步来修改模式图定义。

基于Jena的本体构建方法步骤如下:(1)描述类。

1)将领域中的资源归类,并抽象成概念,定义领域中的概念;2)按照领域中概念的相关性,将这些资源归类划分成不同集合;3)为每一个集合分配一个名称空间;4)为名称空间中的资源分配一个名字;5)建立这些概念之间的层次关系。

(2)描述属性。

1)确定描述这些资源所需的属性;2)为每一个属性分配一个URI,该URI也可以由名称空间和名字连接而成;3)描述该属性的特征(如对称的、可逆的);4)属性可以拥有约束,包括属性值的类型约束、个数约束等;5)建立属性间的层次关系图。

(3)将属性和资源关联到一起。

(4)定义相关类的实例并填充其属性值,但不是必须的。

(5)加入维护此本体文档所需的元数据。

以上的步骤(2)~步骤(4)并没有严格的先后顺序,它们常常是相互嵌套、共同进行的。

2.2方法实现算法(1)描述类。

本文示例代码创建了3个类:Animal类,Dog类和Cat类,并将Dog类和Cat类设置为Animal类的子类。

Animal类的URI标识由命名空间的字符串exNs与字符串"Dog"连接而成。

//在内存中建立本体模型,该模型使用OWL语言规则;OntModel m = ModelFactory.createOntologyModel( OntModelS pec.OWL_MEM, null );//exNs为名称空间的标识;String exNs="/owl/ontologies/example/#";OntClass Animal = m.createClass( exNs + "Animal" );OntClass Dog = m.createClass( exNs + "Dog" );OntClass Cat= m.createClass( exNs + "Cat" );Animal.addSubClass(Dog);Animal.addSubClass(Cat);还可以将Cat类与Dog类设置为不相交类。

为了方便用户的使用习惯,本文为Dog类建立了一个等价类Doggie。

Dog.addDisjointWith(Cat);OntClass Doggie=m.createClass(exNs+"Doggie");Dog.addEquivalentClass(Doggie);(2)描述属性。

在OWL本体中,属性分为对象属性和数据属性两种。

示例代码创建了两个对象属性hasDog与hasPet,并将hasDog设为hasPet的子属性。

OntClass People = m.createClass( exNs + "People" );OntClass Animal = m.createClass( exNs + "Animal" );ObjectProperty hasDog= m.createObjectProperty( exNs+ "hasDog" );ObjectProperty hasPet = m.createObjectProperty( exNs + "hasPet" );hasDog.addSuperProperty(hasPet );(3)将属性和类关联起来。

本文将属性hasPet的定义域设为People类,值域设为Animal类。

即hasPet只可以用于这样的RDF陈述[People类实例,hasPet,Animal类实例]。

hasPet.addDomain( People );hasPet.addRange( Animal);(4)创建实例。

下面创建了一个叫Charles狗的Dog类实例。

Individual inst = m.createIndividual(exNs + " Charles", Dog );(5)加入维护本体的元数据,如版本。

Ontology ont=m.createOntology(exNs);ont.addProperty( ment, "this is an example ontology about Pets Managing");ont.addProperty(bel,"Pet Management Ontology");本文所提出的本体构建方法在思路上较符合软件工程原理,较多地考虑了本体重用性,在代码实现上具有直观性、简明性和易于理解特点。

相关文档
最新文档