當前位置:工程項目OA系統(tǒng) > 泛普各地 > 河北O(jiān)A系統(tǒng) > 石家莊OA系統(tǒng) > 石家莊OA信息化
石家莊OA信息化的基本XML和RDF技術(一):使用XSLT生成RDF
知識管理的基本XML和RDF技術(一):使用XSLT生成RDF
Uche Ogbuji (
CEO 和首席顧問,Fourthought, Inc.
2001 年 7 月
專欄作家 Uche Ogbuji 通過演示用來自現有 XML 格式的數據構成“資源描述框架 (RDF)”模型,開始了他的用
XML 進行的知識管理的實際探索。 如三個代碼清單中所示,RDF 可用作定制 XML
的搭擋,而不僅僅用作某些數據類型的規(guī)范表示。包含代碼樣本的本專欄演示了如何用 RDF
方便地進行知識管理,甚至是在開發(fā)過程中相對比較晚的階段。
雖然 W3C 將“資源描述框架
(RDF)”設計為常規(guī)元數據建模工具,但它還提供了許多功能,使之成為 XML 數據的理想搭擋。在許多正在形成的 XML
應用程序中,在應用程序的生存期中封裝在應用程序中的知識以 XML 文檔形式存儲在數據庫或資源庫中。作為知識管理工具的 RDF
的基本用途是,它允許您組織、關連、分類和注釋這些知識,從而增加存儲數據的總計值。 RDF 具有復雜性,通過簡單地將 RDF 支持添加到基于 XML
的應用程序中來掩飾這種復雜。 本文開始探索 RDF 和 XML 之間的協(xié)作關系。以下將演示如何使用 XSLT 根據 XML 生成 RDF。
必需熟悉 RDF 和 XSLT。也可以先閱讀以前 developerWorks 中的介紹 RDF, 或者參考資料中鏈接的其它文章。
舊東西不一定總是過時的
例如,讓我們來跟蹤技術規(guī)范的開放式開發(fā)過程。規(guī)范是公布到網上且感興趣的團體可以閱讀它、添加與規(guī)范相關的問題、評論公開的問題以及指派相關問題的操作項目等等。
XML 是一種功能強大的工具,它可將這種問題追蹤放在一起。雖然問題和操作項目的描述和相關討論都需要靈活的表示,但結構對于維護數據語義是很重要的。在示例中,應用程序已經開發(fā)好了,而且使用了用于如將操作項目提示者發(fā)送給用戶、支持搜索和瀏覽等任務的基本技術。然而,為了利用 RDF 處理中可使用的許多現有工具和技術,開發(fā)人員已經決定開始在應用程序中使用 RDF。
在選擇使用 RDF 時,開發(fā)人員不想重新設計所有的應用程序數據和邏輯。他們寧愿添加他們能夠(并且或許逐漸)將 RDF 處理移向應用程序核心的那些東西。所以,他們面臨的任務之一是,根據他們已經收集的 XML 數據生成有用的 RDF。
XML 格式示例
清單 1 是追蹤過程中單個問題的 XML
格式示例。它有唯一標識符和表示問題與哪個文檔或文檔部分相關的引用元素。問題的原創(chuàng)者被加上注釋,這表示正在使用系統(tǒng)的用戶管理功能。任何人都可以對文檔進行撰稿,但對已注冊的用戶會特別標注和處理。問題的主要描述和附加的用戶注釋會聯(lián)機顯示,并且還有指派給用戶的相關操作。
播種數據,收獲元數據
從問題追蹤中所使用的 XML 文件中抽取 RDF
元數據的方法有幾種。最直接的方法或許是編寫一種 XSLT 轉換, 它讀取文件并輸出元數據的 RDF/XML 序列,這將在下一小節(jié)中演示。
因為 RDF 位于 URI 上(出于更好或出于更壞),所以您必須為元數據節(jié)點 提出一些 URI 方案。一些事物(如用于創(chuàng)作問題的規(guī)范的位置)已經有 URI。其它事物可能已經有專門的 XML 表示;在我們的示例中,用戶對象作為單獨的 XML 文件管理。其它事物可能仍是完全抽象的,除了它們的元數據節(jié)點外,沒有任何應用程序設計工具或機制。這最后一類的示例是我建議為資源創(chuàng)建的 RDF 類型。 要在 RDF 中使用的 URI 如下:
在鑒定中的規(guī)范的地址。示例: http://rdfinference.org/ril/ril-20010502
問題的 XML 源碼的地址。示例: http://rdfinference.org/ril/issue-tracker/issues/i2001030423
注冊用戶的概要文件的 XML 源碼的地址。示例: http://rdfinference.org/ril/issue-tracker/users/uogbuji.
作者、問題、指派等的 RDF 類型。示例: http://rdfs.rdfinference.org/ril/issue-tracker#Author
一個可能的 RDF 系列化
上面已給出清單 2, 它是表示清單 1
中元數據的一個可能的 RDF 模型系列化。
請注意:在某些情況下,我使用匿名資源,如注釋和操作資源。這是一種建模選項。例如,要對用于任務調度的操作進行集中索引, 那么將 URI 用于抽象操作而不是使它們保持匿名可能是有意義的。
XSLT 轉換
現在,您已經了解 RDF 的樣子,就可以構造一種轉換,將問題描述轉換成適當的
RDF 文件。 清單 3 就是使用 XSLT 的這種轉換。
至于在此清單中看到的一些技術,我已經在先前的一篇 developerWorks 文章—— 用 XSLT 進行 WSDL 處理中討論過,它包含將“Web 服務描述語言 (WSDL)” 轉換成 XML 這一章節(jié)。在這種情況下,目的是盡可能使產生的 RDF 系列化看上去更接近原始的WSDL XML。在這種情況中沒有這種約束,因此轉換很少是機密的。只是依次訪問各種 XML 元素,并一點一點地構建等價的 RDF 描述。
最重要的高層次的操作是 issue 元素的匹配,它僅僅轉向并調用一個已命名模板來為相應的問題實際構建 RDF 描述。這種間接方式的原因是,可以為定制和擴展這種轉換提供靈活性。例如,當您閱讀下一個 XML 編程思想專欄時,可以在執(zhí)行從問題文檔到 RDF 的批處理轉換的單獨的轉換中使用已命名模板。
在示例中,除了聯(lián)機規(guī)范本身之外,問題跟蹤程序還可以跟蹤有關各種資源的問題。(您可以從問題跟蹤程序本身開始一個問題——也許是一個錯誤報告。)由于這個原因,設計還要使引用元素的處理變得相當靈活。 使用單獨的 XSLT 方式(確保僅在正確時刻解析引用元素),模板檢查引用元素的可展開內容。目前,示例應用程序通過用來自正被討論的問題中的引用簡單地創(chuàng)建 RDF 描述來處理引用是指規(guī)范這種情況。由于需要處理更多種類型的可擴展引用, 所以可以添加附加的 xsl:when 子句來處理這些情況。
您還可以查看用于處理使用概要文件或只是自由格式的文本注冊用戶描述這一事實的基本方法。
更多要遵循的
在本專欄中,我已提供了使用 XSLT 從 XML 實例中抽取
RDF 的簡單示例。隨著越來越多的基于 XML 的應用程序的使用,這樣的技術在擴展帶有知識管理特性的應用程序中是有用的。
下一個專題將繼續(xù)問題跟蹤程序示例,同時演示問題文檔的批處理和對此處理有用的一些開放源碼工具。
本專題中的示例和下一專題中的示例都是基于一個實際的項目,該項目為 rdfinference.org 上的“RDF 接口語言”規(guī)范組成一個問題跟蹤程序。不久,您將可以在此公共站點上看到這一實際工作。在那之前,請您自由地試驗本文中的示例代碼,并將任何問題、意見和想法發(fā)送給我。
參考資料
請參閱本專欄以前的專題,題為:
-
- XML meets semantics: The reality
- XML meets semantics: Meet the new kids on the
block, and one more from the old neighborhood
- Walking the semantic beat
- XML meets semantics: The reality
Dave Beckett 的 RDF Resource Guide 是至與 RDF 相關的文章、工具等鏈接的綜合集合。
本文中的示例是使用 4Suite 的 XSLT 處理器測試的。
XML: the next big thing 是 Tom Halfhill 編寫的 IBM 研究論文,它討論了 RDF 為下一代搜索引擎提供動力的可能性。
解決方案 2001 年開發(fā)人員大會將于 8 月 13 日至 18 日在舊金山召開; 請在 AgendaBuilder中搜索或瀏覽有關 230 多個會議的描述。有二十多個會議是關于 XML 及其相關技術,包括:
-
- 實踐:集成
XML 與 DB2
- 實踐:
語音 XML 工具/構建絕佳的應用程序
- XSL
示例:XML 轉換簡介
- 使 用 Java 技術對 XML 文檔進行語法分析和編程。
- 實踐:集成
XML 與 DB2
關于作者
Uche Ogbuji (uche.ogbuji@fourthought.com) 是 Fourthought
Inc. 的顧問兼創(chuàng)始人, 該公司是專為企業(yè)知識管理應用提供 XML 解決方案的軟件供應商和顧問。
Fourthought 開發(fā)了 4Suite、 4Suite
Server,它們是 XML 中間件的開放源碼平臺。 Ogbuji
先生是一名出生于尼日利亞的計算機工程師和作家,他生活和工作在美國科羅拉多州的博耳德。
瀏覽:知識管理的基本XML和RDF技術(二)
知識管理的基本XML和RDF技術(三)
知識管理的基本XML和RDF技術(四)
知識管理的基本XML和RDF 技術(五)
知識管理的基本XML和RDF技術(六)
- 1Web服務內幕,第2部分: W3C Web服務專題研討會的概述
- 2MSDN Online Voices - Extreme XML:已啟用XML Web服務的Office文檔
- 3石家莊OA信息化與企業(yè)發(fā)展
- 4Web Services Description Language (WSDL) 1.1
- 5從知識的角度回顧企業(yè)能力理論-摘錄
- 6Accessing Web Services From DHTML
- 7石家莊泛普OA辦公軟件的用戶界面定制
- 8對于石家莊OA信息化的幾種不同理解(BY AMT 夏敬華)
- 9低價是IT產品過冬的法寶嗎?
- 10WebLogic Workshop給非開發(fā)人員帶來Web服務
- 11固化組織知識
- 12什么是真正的石家莊OA信息化
- 13Licensee Requirements from Dev, Test, and Ops
- 14At Your Service, On the Web
- 15Web Services Gateway入門
- 16SOAP技術與B2B應用集成--SOAP消息中的類型/值的編序方法和示例
- 172009金和協(xié)同管理“破冰之旅”助企業(yè)安然渡冬
- 18泛普軟件如何實現知識庫雙機熱備
- 19BBS熱點話題精選:石家莊OA信息化靠誰來推動?
- 20Sharing information through the Lotus Knowledge Discovery Sy
- 21網絡、知識增長和經濟發(fā)展
- 22[原創(chuàng)]淺談KM的知識源采集和技術實現
- 23復明集團網上審批管理OA辦公軟件系統(tǒng)系統(tǒng) V1.0 ...
- 24第五項修煉簡要目錄
- 25石家莊OA信息化項目的“做”與“不做”(BY AMT 夏敬華)
- 26關于模型的簡單介紹!
- 27IBM為Web服務安全 發(fā)布一系列有爭議的API
- 28Licensing
- 29泛普OA軟件支持在線直接發(fā)送消息、傳送文件、音頻會話等
- 30Web服務準備:理解和使用Web服務托管技術
成都公司:成都市成華區(qū)建設南路160號1層9號
重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務大廈18樓