• 沒有找到結果。

資料庫設計

在文檔中 中 華 大 學 (頁 48-54)

第四章、 語意分析系統之建立

4.3 系統建構

4.3.2 資料庫設計

4.3.1 系統內網路服務建置

網路服務建置部分,將分別說明我們系統所建立的四種 Web Services 是如何配合需求運 作的。

 流程初始化網路服務

我們為了讓 JSP 網頁每次能抓取不同的流程架構,又能按照我們語意分析流程執行。所 以我們必頇提供初始化的 Web Services 給 JSP 網頁抓取流程架構一些初始值。我們在此也提 供四種不同的 Web Services 處理不同的值, 其細部設計流程,如圖 4.2:

(一) int get_Places_num():提供如 Petri Net 架構下 Places 的數量。

(二) int get_Transitions_num():提供如 Petri Net 架構下 Transitions 的數量。

(三) int [][] D(int p,int t):提供流程轉移時,計算所需的系統矩陣。參數 p 和 t,為 Places 和 Transitions 的值,主要為宣告回傳值的二維矩陣的大小。

(四) int M0():提供如 Petri Net 架構下的初始值,以利流程執行。

圖 4.2 各個流程初始化網路服務設計流程

 問題產生網路服務

在問題產生這個 Web Service,系統主要做的工作,為產生使用者需要回答之問題集合之 HTML,來讓網頁顯示。其細部流程如圖 4.3 的流程圖所示。一剛開始,會將參數 M 值所指 出被 Token 的問題集合找出,並且等待被建立。接著向資料庫內的 SubQuestionSet 資料表找 出其同一問題集合內的問題。接著,根據問題集合的每個問題類型不同,對不同類型的資料 表找出其問題,在建立時所需的 HTML 相關資訊,協助建立問題。每個問題間都用<br>的網 頁換行符號區隔,直到被 Token 的問題集合內的問題全都處理完畢。最後將其字串回傳,給 網頁顯示其問題資訊。

 處理產生網路服務

處理產生 Web Service 為產生觸發動作的 Button,所需的 HTML 程式給網頁顯示。這也 將決定下個問題流程,將移至下個問題集合的依據。其細部流程如圖 4.4 的流程圖所示。一 開始,會在 M 值內找出被 Token 的問題集合為何。在依據所找出的問題集合,在 QT 資料表 內找出所需的 Transitions 為那些,再逐一建立其 Button。在每個 Button 在建立時,會依據是 Button 是分岐點或 Next 的 Button 做不同的建立方式。因為如果是分岐點的 Button,Button 本身也是有語意在上面,必需擷取出來。此 Button 建立流程將會直到所有 Button 全建立完成 後,將其 HTML 碼字串回傳給網頁顯示。

 語意處理網路服務

語意處理 Web Service 在本論文中,因還沒和 UDDI 建立起語意文件的格式,所以將保留 其設計方式。而在本論文將此 Service 做語意內容的結合的動作。在 Web Service 設計上為 String Semantic_Process(String a,String b)。a 字串為已處理成標準格式的內容,b 字串為剛擷取出使 用者回答的需求。在經過此 Web Service 處理後,將會回傳符合標準文件格式的內容。直到全 部語意分析流程結束後,此內容將是使用者語意文件的重要依據。

圖 4.3 問題產生網路服務建立流程 找出 M 值內被

Token 的問題集 合

將被查詢出的 問題集合內的問題

等待逐一產生 開始

向資料庫查詢 SubQuestionSet 資料

表被 Token 的問題 集合之問題

將問題集合內的問題 根據不同的類型找出

其資訊

跟據找出之問題逐一按照該 問題種類產生 HTML 字串,每

個問題間用<br>換行符號間 隔

判斷是否 還有問題集合內

的問題需處理

回傳產生問題 網頁 HTML 字

問題產生網路服務:String Question(int M ,int p) 參數 M 為被標記的問題集合 參數 P 為架構中問題集合的數量

否 是

圖 4.4 處理產生網路服務建立流程 開始

處理產生 Web Service:String Button(int M, int P ) 參數 M 為被標記的問題集合 參數 P 為架構中問題集合的數量

找出 M 值內 被 Token 的問

題集合

向資料庫查詢 QT 資料表會遇到的

動作有那些

查詢出的動作 等待逐一建立

判斷動作是 否為分岐點

建立 Next Button 的 HTML 字串 並且加入<BR>

向資料庫查詢 Button 資料表 Button 的相關資料

建立分歧點 Button 的 HTML

字串並且加入

<BR>

判斷是否還有 Transitions 需建立 Button

回傳 Button 字串 是

否 是

4.3.2 資料庫設計

在資料庫設計的部分,我們會建立起五種類型的資料表。第一種類型為 Petri Net 節點的 Places 和 Transitions 資料的資料表。在我們資料庫建立的為 QuestionSet 和 Transition 資料表。

第二種類型資料表,為我們語意分析系統所需的問題集合的資料。在我們資料庫建立的為 SubQuestionSet 資料表。第三種類型資料表為 Petri Net 的 Places 跟 Transitions 連結關係和 Transitions 跟 Places 連結關係兩種資料表。在我們資料庫建立的為 QT 和 TQ 資料表。第四種 類型為當動作為分岐點時,由於此時的 Button 也是含有語意的訊息,所以我們必頇儲存建立 此 Button 的 HTML 碼,時所需的資訊。在我們資料庫建立的為 Button 資料表。第五種類型 資料表,為問題集合內各個類型的問題,我們提供四種類型給語意分析者使用。這些資料表 儲存的為建立此問題的 HTML 碼時,所需的資訊。在我們資料庫建立的為 Text、CheckBox、

Radio 及 SelectOption 資料表。圖 4.5,為 NetBeans 顯示資料庫所建立的資料表及內容。

圖 4.5 資料庫中資料表列

在文檔中 中 華 大 學 (頁 48-54)

相關文件