一種基于Jena的藥品本體推理查詢方法和系統(tǒng)的制作方法
【技術領域】
[0001]本發(fā)明涉及一種基于Jena的藥品本體推理查詢方法和系統(tǒng),屬于智能檢索技術領域。
【背景技術】
[0002]由于藥品的信息不斷增多,形式和內(nèi)容多樣,基于人工分類目錄或關鍵詞匹配的傳統(tǒng)藥品信息不夠適應當前藥品信息的特點,而且不能提供用戶檢索的推理,因此我們引入藥品本體,使藥品信息語義化,并得到藥品信息在語義推理方面的支持;本體能夠很好地描述概念以及概念與概念之間的關系,具有良好的概念層次結構和對邏輯推理的支持,因而將藥品本體引入藥品信息檢索系統(tǒng)后,能夠為改進信息檢索性能提供組織形式和語義上的保證。
[0003]然而藥品本體自身的推理能力十分有限,只能通過本體間父子的關系進行推理,而且不能根據(jù)藥品本體的知識特點進行推理規(guī)則的自定義,這并不能滿足人們對于智能檢索系統(tǒng)推理的需求,因此我們需要引入本體推理機以提供自定義藥品本體推理規(guī)則的支持。
[0004]Jena是HP公司開發(fā)的一個基于Java的開放源代碼語義網(wǎng)工具包,為解析RDF、RDFS和OWL本體提供了一個編程環(huán)境及一個基于規(guī)則的推理引擎。為解決藥品本體自身推理的不足,本發(fā)明在本體檢索系統(tǒng)中引入了 Jena推理機,以提高本體的推理能力,以及提供對自定義推理規(guī)則的支持。
[0005]目前,由于藥品本體自身的推理能力較弱,不能滿足人們智能檢索的需求。而本發(fā)明能夠很好地解決上面的問題。
【發(fā)明內(nèi)容】
[0006]本發(fā)明目的在于提供了一種基于Jena推理機的藥品本體推理查詢方法,該方法提高了藥品本體的語義推理能力。
[0007]本發(fā)明解決其技術問題所采取的技術方案是:一種基于Jena推理機的藥品本體推理查詢方法,該方法包括如下步驟:
[0008]步驟1:構建生成藥品本體資源文件;
[0009]在領域專家的幫助下使用protggg工具(即構造本體的常用軟件)構建藥品本體,生成藥品本體資源文件并將其保存至本地;
[0010]步驟2:自定義基于藥品信息機制的推理機;
[0011 ]步驟2-1:根據(jù)藥品本體的信息特點定義基于藥品本體的推理機制;
[0012]步驟2-2:將自定義的藥品本體推理機制注冊成藥品本體推理機;
[0013 ]步驟3: Jena對于藥品本體資源文件的解析;
[0014]步驟3-1:通過Jena的模型工廠(即ModelFactory)創(chuàng)建本體模型;
[0015]步驟3-2:通過本體模型的API讀取藥品本體資源文件,完成藥品本體文件的解析;
[0016]步驟4:將解析過藥品本體資源文件的本體模型與自定義推理機進行綁定,生成具有語義推理能力的藥品本體模型(即InfModeI);
[0017]步驟5:執(zhí)行查詢;
[0018]步驟5-1:系統(tǒng)獲取用戶的檢索詞之后,要對詞語進行預處理預處理,預處理就是將詞語進行去噪處理,去除無關緊要的詞語,得到最終的查詢詞或者查詢詞組;
[0019]步驟5-2:將預處理后的查詢詞向InfModel進行輸入,執(zhí)行藥品本體的語義推理查詢;
[0020]步驟6:得到查詢結果,并輸出。
[0021]本發(fā)明還提供了一種基于Jena的藥品本體推理查詢系統(tǒng),該系統(tǒng)包括:藥品本體構建模塊、Jena推理模塊、查詢信息輸入模塊、查詢信息輸出模塊。
[0022]藥品本體構建模塊的功能是根據(jù)藥品信息的特點構建藥品本體,并且生成藥品本體文件。
[0023]Jena推理模塊的功能是解析藥品本體文件并與自定義的藥品本體推理機進行綁定結合,生成具有自定義語義推理能力的藥品本體。
[0024]查詢信息輸入模塊的功能是獲取用戶查詢詞,并將用戶查詢詞進行預處理,得到符合系統(tǒng)要求的查詢輸入詞。
[0025]查詢信息輸出模塊的功能是得到藥品本體推理查詢結果,并最終呈現(xiàn)給用戶。
[0026]有益效果:
[0027]1、本發(fā)明基于藥品本體模型,采用Jena推理引擎,實現(xiàn)了對藥品信息進行語義推理查詢。
[0028]2、本發(fā)明將藥品本體與Jena相結合,優(yōu)化和提高了藥品本體查詢系統(tǒng)的智能推理能力。
[0029 ] 3、本發(fā)明的系統(tǒng)架構清晰、簡單,易于實現(xiàn)。
【附圖說明】
[0030]圖1為本發(fā)明查詢詞預處理方法流程圖。
[0031]圖2為本發(fā)明Jean推理機在藥品本體查詢系統(tǒng)中的推理方法流程圖。
[0032]圖3為本發(fā)明的方法流程圖。
[0033]圖4為本發(fā)明的系統(tǒng)架構圖。
【具體實施方式】
[0034]如圖1所示,本發(fā)明系統(tǒng)獲取用戶檢索詞之后,根據(jù)藥品詞典和詞語詞典劃分詞性,組成詞語組,如系統(tǒng)獲取用戶檢索“青霉素的功能是什么”,系統(tǒng)將根據(jù)詞庫將用戶檢索劃分成詞組{ “青霉素”,“的”,“功能”,“是”,“什么” },然后系統(tǒng)根據(jù)詞性進行降噪處理,去除無用的虛詞、代詞等;因此經(jīng)過降噪處理之后,詞組變成{ “青霉素”,“功能” },即為最終的檢索詞。
[0035]如圖2所示,本發(fā)明Jean推理機在藥品本體查詢系統(tǒng)中的推理方法流程包括:
[0036]步驟1:在藥品領域專家的幫助下構建藥品本體,首先本體捕獲,即在領域專家的幫助下,獲取出藥品領域中概念術語及其關系,確保這些概念術語及關系無二義性,接著將藥品進行結構化的表示,然后進行本體評價,判斷生藥品本體是否符合標準,若符合則使用protege工具進行本體構建,否則返回本體捕獲階段,最后將藥品本體信息以文件的形式保存起來。
[0037]步驟2:定義推理機制,根據(jù)藥品本體信息的特點對規(guī)則做出定義。
[0038]如果藥品X是藥品y的一種,而藥品y是具有功能z,則藥品X是具有功能z;其規(guī)則在Jena推理機中的表述如下:
[0039]Rulel:(?x Kind of ?y), (?y Has Funct1n of?z)^(?x Has Attribute of?z);規(guī)則一
[0040]步驟3:用Jena推理機的Reasoner類的createReasoner()方法把定義好的藥品推理規(guī)則Rulel進行注冊,注冊生成藥品本體推理機reasoner。
[0041 ] 步驟4:讀取并解析藥品本體文件,通過Jena的Mode IFactory類中的createMode I()方法創(chuàng)建本體模型;再用Model類中的read()方