APP下载

OWL本体存储工具模块设计与实现

2015-04-28毛金玲

中国科技纵横 2015年8期
关键词:模块设计

毛金玲

【摘 要】本文介绍了存储工具的实现过程,包括编写代码所用的软件、系统流程以及各模块的实现方式。其中重点为各模块的实现方式,说明了实现每个模块的类以及实现重要功能的函数的代码。本系统的实现利用Eclipse自带的工具包及组件得以完成,其中用到的包有util包,用到的类为Iterator,Vector,StringTokenizer,ArrayList;sql包,用到的类有DriverManager,Statement;io包,用到的类有BufferedReader。界面绘制主要用到了AWT组件及Swing组件。

【关键词】OWL本体 模块设计 模块实现

1 模块设计

该基于关系数据库的OWL本体存储工具的模块设计如图1所示。

图1 基于关系数据库的OWL本体存储工具模块设计图

2 系统实现

本设计基于Java平台,使用最初由OTI,IBM公司的IDE产品开发组创建的Eclipse集成开发环境。本系统的实现利用Eclipse自带的工具包及组件得以完成,其中用到的包有util包,用到的类为Iterator,Vector,StringTokenizer,ArrayList;sql包,用到的类有DriverManager,Statement;io包,用到的类有BufferedReader。界面绘制主要用到了AWT组件及Swing组件。

3 模块实现

3.1数据模块

该模块对应的包为ren.Data包,这个包中的类是本工具的中间数据模型,用于分析OWL本体的源文件后存储分析结果,为SQL语句的生成提供数据。ren.Data包中共包含26个类,每个类的功能及属性已在存储工具设计中详细介绍。其中Data类用于存储持久化数据,在解析器Analyser和SQL生成器SQLMaker之间传递整个中间数据模型。该类代码为:

3.2控制模块

控制模块为该工具的核心部分,用于执行对文件、字符串、数据库等操作以及对数据的处理和运行,并将结果反馈给视图模块等任务。

(1)文件读取模块。文件读取模块对应的是ren.ReaderAndAnalyser包中的AFileReader类,该类中最重要的函数为readFile()函数,此函数利用输入流对文件对象file中的内容进行读取,对读取到的每一行作为一个元素存储到text向量中。文档解析模块和映射转化模块合并在ren.ReaderAndAnalyser包中的Analyser类中。该类包含27个函数,其中public void spitter()函数为拆分函数,将字符串向量中的元素进行拆分和拼接,包含一个完整公理的描述即为一个字符串。

(2)SQL语言生成模块。SQL语言生成模块对应的是ren.SQL包中的SQLMaker类,以中间数据模型为基础,生成11个基本表和每个实体类对应的表的生成语句和插入语句。此类中的控制函数是public SQLs makeSQLs(),调用各个表对应的函数生成各个表的创建语句和插入语句。以Resource_Table表为例,其SQL语言生成代码如下:

(3)数据库操作模块。数据库操作模块对应的是ren.RDBOperator包中的RDBOperator类,完成了连接数据库以及对数据库进行操作的功能。

(4)显示操作模块。显示操作模块负责将每一个子步骤的结果反馈给视图模块加以显示。由于本工具的视图使用的是Java提供的Swing工具,通过事件监听机制来获取用户的操作并进行处理,因此该模块可与视图模块进行合并。

3.3视图模块

视图模块对应的是ren.UI包。其中OWLToRDBManager类为基于本工具的用户界面绘制类,用于完成绘制软件窗体、初始化软件说明、添加菜单栏、为软件窗体的主要控件添加监听器等操作。此类中最主要的函数是initial(JFrame frame)函数,用于初始化界面,并为菜单栏中的菜单项(如打开文件、退出、显示版本信息)添加监听器和执行函数。

4 结语

本文介绍了存储工具的实现过程,包括编写代码所用的软件、系统流程以及各模块的实现方式。其中重点为各模块的实现方式,说明了实现每个模块的类以及实现重要功能的函数的代码。

参考文献:

[1]李勇,李跃龙.基于关系数据库存储OWL本体的方法研究[J].计算机工程与科学,2008, 30(7):105-107.

[2]Vy?niauskas E, Nemurait? L, Paradauskas B. Preserving Semantics of Owl 2 Ontologies in Relational Databases Using Hybrid Approach[J]. Information Technology And Control, 2012, 41(2): 103-115.

[3]Cardoso J, Escórcio A L N. Editing Tools for Ontology Construction[J]. Idea, March, 2007: 1-27.

猜你喜欢

模块设计
汽车销售行业中数据挖掘技术的应用
基于小型ERP管理系统
爬壁机器人应用嵌入式控制的探讨
针织横机生产CAPP软件开发系统主要功能模块设计
舆情监测系统设计
一种基于DDS的信号源的设计与实现