毛金玲
【摘 要】本文介紹了存儲工具的實現(xiàn)過程,包括編寫代碼所用的軟件、系統(tǒng)流程以及各模塊的實現(xiàn)方式。其中重點為各模塊的實現(xiàn)方式,說明了實現(xiàn)每個模塊的類以及實現(xiàn)重要功能的函數(shù)的代碼。本系統(tǒng)的實現(xiàn)利用Eclipse自帶的工具包及組件得以完成,其中用到的包有util包,用到的類為Iterator,Vector,StringTokenizer,ArrayList;sql包,用到的類有DriverManager,Statement;io包,用到的類有BufferedReader。界面繪制主要用到了AWT組件及Swing組件。
【關(guān)鍵詞】OWL本體 模塊設(shè)計 模塊實現(xiàn)
1 模塊設(shè)計
該基于關(guān)系數(shù)據(jù)庫的OWL本體存儲工具的模塊設(shè)計如圖1所示。
圖1 基于關(guān)系數(shù)據(jù)庫的OWL本體存儲工具模塊設(shè)計圖
2 系統(tǒng)實現(xiàn)
本設(shè)計基于Java平臺,使用最初由OTI,IBM公司的IDE產(chǎn)品開發(fā)組創(chuàng)建的Eclipse集成開發(fā)環(huán)境。本系統(tǒng)的實現(xiàn)利用Eclipse自帶的工具包及組件得以完成,其中用到的包有util包,用到的類為Iterator,Vector,StringTokenizer,ArrayList;sql包,用到的類有DriverManager,Statement;io包,用到的類有BufferedReader。界面繪制主要用到了AWT組件及Swing組件。
3 模塊實現(xiàn)
3.1數(shù)據(jù)模塊
該模塊對應的包為ren.Data包,這個包中的類是本工具的中間數(shù)據(jù)模型,用于分析OWL本體的源文件后存儲分析結(jié)果,為SQL語句的生成提供數(shù)據(jù)。ren.Data包中共包含26個類,每個類的功能及屬性已在存儲工具設(shè)計中詳細介紹。其中Data類用于存儲持久化數(shù)據(jù),在解析器Analyser和SQL生成器SQLMaker之間傳遞整個中間數(shù)據(jù)模型。該類代碼為:
3.2控制模塊
控制模塊為該工具的核心部分,用于執(zhí)行對文件、字符串、數(shù)據(jù)庫等操作以及對數(shù)據(jù)的處理和運行,并將結(jié)果反饋給視圖模塊等任務(wù)。
(1)文件讀取模塊。文件讀取模塊對應的是ren.ReaderAndAnalyser包中的AFileReader類,該類中最重要的函數(shù)為readFile()函數(shù),此函數(shù)利用輸入流對文件對象file中的內(nèi)容進行讀取,對讀取到的每一行作為一個元素存儲到text向量中。文檔解析模塊和映射轉(zhuǎn)化模塊合并在ren.ReaderAndAnalyser包中的Analyser類中。該類包含27個函數(shù),其中public void spitter()函數(shù)為拆分函數(shù),將字符串向量中的元素進行拆分和拼接,包含一個完整公理的描述即為一個字符串。
(2)SQL語言生成模塊。SQL語言生成模塊對應的是ren.SQL包中的SQLMaker類,以中間數(shù)據(jù)模型為基礎(chǔ),生成11個基本表和每個實體類對應的表的生成語句和插入語句。此類中的控制函數(shù)是public SQLs makeSQLs(),調(diào)用各個表對應的函數(shù)生成各個表的創(chuàng)建語句和插入語句。以Resource_Table表為例,其SQL語言生成代碼如下:
(3)數(shù)據(jù)庫操作模塊。數(shù)據(jù)庫操作模塊對應的是ren.RDBOperator包中的RDBOperator類,完成了連接數(shù)據(jù)庫以及對數(shù)據(jù)庫進行操作的功能。
(4)顯示操作模塊。顯示操作模塊負責將每一個子步驟的結(jié)果反饋給視圖模塊加以顯示。由于本工具的視圖使用的是Java提供的Swing工具,通過事件監(jiān)聽機制來獲取用戶的操作并進行處理,因此該模塊可與視圖模塊進行合并。
3.3視圖模塊
視圖模塊對應的是ren.UI包。其中OWLToRDBManager類為基于本工具的用戶界面繪制類,用于完成繪制軟件窗體、初始化軟件說明、添加菜單欄、為軟件窗體的主要控件添加監(jiān)聽器等操作。此類中最主要的函數(shù)是initial(JFrame frame)函數(shù),用于初始化界面,并為菜單欄中的菜單項(如打開文件、退出、顯示版本信息)添加監(jiān)聽器和執(zhí)行函數(shù)。
4 結(jié)語
本文介紹了存儲工具的實現(xiàn)過程,包括編寫代碼所用的軟件、系統(tǒng)流程以及各模塊的實現(xiàn)方式。其中重點為各模塊的實現(xiàn)方式,說明了實現(xiàn)每個模塊的類以及實現(xiàn)重要功能的函數(shù)的代碼。
參考文獻:
[1]李勇,李躍龍.基于關(guān)系數(shù)據(jù)庫存儲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.