第三章 系統設計與建置
第一節 研究工具
本節將介紹研究中應用於系統建置過程中之所有工具,包含 Protégé、Apache Web Server、MySQL Database 與 D2RQ Server。利用這些語意網技術、知識本體 技術和網站伺服器軟體,實現縱覽學者學術歷程的各項功能。本研究的系統架構 如圖 3-1,以下將分別說明各研究工具在本研究中的定位。
圖 3-1 圖資領域學者事業歷程系統網站架構圖
26
一、 Protégé
Protégé 是史丹佛大學開發的本體編輯和知識獲取軟體,為專門針對 OWL 和 RDF(S)本體語言的開放原始碼 Java 類別庫,開發語言採用 Java。Protégé-OWL API 操作指南提供了主要類別和方法的使用,介紹如何使用 Protégé-OWL API 載 入與儲存 OWL 文件、查詢和操作 OWL 資料模型,以及執行符合描述邏輯的推 理。由於其優秀的設計和眾多的外掛模組,Protégé 已成為目前使用最廣泛的知 識本體編輯器之一 (Stanford Center for Biomedical Informatics Research, 2014)。
同時,為了達到前面探討 OWL 文獻時所說的,知識本體須符合 OWL DL 標 準,因此決定安裝 Pellet 插件於 Protégé 中。Pellet,是一個以 Java 為基礎且開放 原始碼的免費 OWL DL 推論工具,用於 Jena 和 OWL API library,可以檢查知 識本體的一致性(consistency)、分類概念(taxonomy)、繼承關係(entailments)與不滿 足(unsatisfiable)的概念等(Clark & Parsia, LLC, 2014)。
此外,裝有 Pellet 推論器的 Protégé 亦可檢查標記語言所定義的資料型態限 制 。 繼 承 關 係 (entailments) 有 兩 個 議 題 , 分 別 為 包 含 (subsumption) 與 滿 足 (satisfiability)的檢查, 包含 (subsumption)檢查父子概念間的關係 ( subconcept-superconcept relastionship) , 確 認 父 概 念 是 否 較 子 概 念 更 一 般 化 , 而 滿 足 (satisfiability)則檢查某個概念被定義出來,是否具有意義,藉由判斷此概念是否 會被指到一個空的概念,決定此概念是否需存在(沈佳瑾,2006)。
本研究將收集王振鵠教授的歷程資料,在評估內容後,以人工的方式,透過 Protégé 建置適用於圖書館領域發展的知識本體,同時利用 Pellet 做即時性的推 論檢查,以確保最後產出的知識本體具有完整的推理功能。
27
二、 Apache Web Server
Apache Web Server(簡稱 Apache)是 Apache 軟體基金會的一個開放原始碼 網頁伺服器,可在大多數電腦作業系統中運行,由於其跨平臺的特性與安全性,
因此已被廣泛使用,是最流行的 Web 伺服器端軟體之一(The Apache Software Foundation, 2014)。
本研究選擇 Apache 作為伺服器工具之原因在於其建構快速且可靠,並且能 通過簡單的 API 擴充,將 Jena API 等套件編譯到伺服器中,以便日後透過網頁 下達 SPARQL 查詢至 MySQL。
三、 MySQL Database
MySQL 原本是一個開放原始碼的關聯式資料庫管理系統,原開發者為瑞典 的 MySQL AB 公司,該公司於 2008 年被昇陽微系統(Sun Microsystems)收購。
2009 年,甲骨文公司(Oracle)收購昇陽微系統公司,MySQL 成為 Oracle 旗下 產品。MySQL 在過去由於效能高、成本低、可靠性好,已經成為最流行的開放 原始碼資料庫,因此被廣泛地應用在 Internet 上的中小型網站中。
隨著 MySQL 的不斷成熟,它也逐漸用於更多大規模網站和應用,比如維基 百科、Google 和 Facebook 等網站(Oracle Corporation, 2015)。
經由 Jena 編譯成的 D2RQ Server 轉換後,MySQL 便能以特殊的儲存方式,
儲存本研究的 RDF 檔案與 OWL 規則,實踐語意資料的存取功能。
28
四、 D2RQ Server 與 Jena API
D2RQ 提供了非 RDF 架構的關聯式資料庫,一個虛擬 RDF 架構瀏覽模式,
同時也能以存取 RDF 檔案的方式存取關聯式資料庫,不需要額外儲存一份到特 殊的 RDF 儲存空間。D2RQ 支援 Oracle、MySQL、PostgreSQL、Microsoft SQL Server 關聯式資料庫(Cyganiak, 2012)。
在 D2RQ 中主要使用 Mapping File 來完成關聯式資料庫中對 RDF 架構的映 射,可在導入 Jena API 的 Java 程式碼中,透過 Mapping File 將資料庫的內容轉 換為一份真的 RDF 檔案。D2RQ 也可傳遞 SPARQL 查詢至資料庫,且 D2RQ 產 生的 RDF 檔案包含了外部領域屬性,使該資料庫的資料成為 Linked Data。
其中 Jena 乃支援 Java 可編譯與查詢 RDF 與 OWL 之 API,是由 HP Labs Semantic Web Programme 所開發出來的查詢語言,可針對不同之屬性資訊做關聯 式的查詢。Jena 的開發平臺為 Java Framework,可用於建構語意網的應用程式介 面(The Apache Software Foundation, 2014a)。
Jena 的主要功能為 RDF、RDFS 與 OWL 查詢之標準語言,邱茂順(2005)
在其研究中將 Jena Framework 的功能分為五點:1) RDF 的應用程式介面服務;2) 可讀取和寫入 RDF,以及 N-Triples 剖析;3) OWL 的應用程式介面服務;4) 是 一個能記憶與保留之儲存工具;5) RDF 的查詢語言(RDQL)。
而本研究將利用導入 Jena API 的 D2RQ Server,建置可轉換資料為知識本體 架構,再導入到 MySQL 儲存的伺服器,使先前設計出的領域知識本體與 MySQL 媒合,以便後續研究使用。
29
總結 D2RQ 可用於本研究的功能,包括使用 RDF Browser 瀏覽資料庫內容,
以及使用 SPARQL 查找資料,還有透過 Mapping File 將資料庫的內容轉換為 RDF 檔案(Cyganiak, 2012)。因此,D2RQ 在本研究中扮演一個極為重要的角色,否 則無法將 MySQL 內部的資料快速轉換成 RDF 格式。