郭毓東
(湖南工業大學,湖南 株洲 412008)
供應鏈知識管理系統的本質是供應鏈成員企業利用現代化先進的信息技術和數據庫技術,開發成員企業供應鏈知識資源,將供應鏈相關知識作為資產進行管理,對有關的供應鏈知識進行一系列的收集、梳理和處理,并建立與之相適應的組織模式,以便能在恰當的時間,把恰當的供應鏈知識傳遞給客戶、供應商、分銷商、零售商等恰當的人員,使其能夠有效地利用供應鏈知識,采取恰當行動,最大限度的增進各成員企業的經濟效益。供應鏈知識管理系統實現過程中最核心的部分是數據的集成、知識的抽取和表現。
XML的技術優勢是能在Web上實現數據的存儲、共享和對各種異構應用程序的支持,將XML應用于供應鏈知識管理系統,在實現系統部分結構化數據的轉化存儲和知識的抽取、表現方面取得了較為理想的效果。
XML(Extensible Markup Language)是可擴展標記語言,于1998年發布,是 W3C(World Wide Web Consortium)的推薦標準,是一種開發簡單而又可擴展的、結構化和半結構化信息文本表示機制。XML設計的主要目的是為了傳輸和存儲數據,其關注的焦點是數據的內容。由于XML數據以純文本格式存儲,提供了一種獨立于所有不兼容的軟、硬件的數據存儲方法。由于通過XML可以在各種不兼容的應用程序中讀取數據,以XML交換數據降低了復雜性。XML語言常用于簡化數據的存儲和共享,所以,使用XML技術用于知識的抽取有其與生俱來的優勢。
XML文件的格式是一種樹型結構,它從根部開始,層層展開到枝葉。XML文件包含XML元素和屬性,并有其獨特的命名規則。
在供應鏈知識管理系統中,知識抽取是通過XML格式的文件來進行的,它主要應用于各種類型數據到知識元的解釋抽取和將多類非結構化的數據重新構造成結構化的知識并表現出來,簡而言之,即實現了各種類型數據與結構化知識信息之間的轉換。
知識元的解釋抽取就是將各種類型數據中所需要的知識信息(通常為參數化的)提取出來,保存到不同的知識元參數表;重新構造是將來自各類知識元的內容和解釋抽取后的結果參數,按指定的格式填充到需要表現的結構化知識信息(輸出)中。
XML描述文件由兩大部分組成,第一部分由<General/>標記構成,主要描述了該文件的信息,包括文件的定義方式及用途等說明信息;第二部分由<knowledge Defines/>標記構成,該標記由多個<knowledge Define/>標記組成,每個<knowledge Define/>標記對應一個參數的詳細定義信息。每一個格式描述文件必需包含的節點內容由表1中的節點構成。

本文中所提到的供應鏈知識管理系統的知識抽取分為兩個方面:一是供應鏈知識元的抽?。欢枪溨R信息的重新構造,其完整流程如圖1所示。

基于XML技術的供應鏈知識管理系統的知識抽取實現的難點在對格式各異的數據信息的處理,因各種類型的文件格式都有其獨特性,且其包含的數據信息并不一定規整,在知識抽取的實現上比較困難。
為了解決這個問題,系統在設計時提出了表達式的概念。在XML格式描述文件中,定義了兩種形式的表達式,分別為:調用變量、參數的值或自定義函數的表達式和調用正則表達式的表達式。通過表達式描述,可以有效的解決各種類型文件的抽取和重新構造。下面詳細說明一下這兩種表達式。
調用變量、參數的值或自定義函數的表達式主要是數學表達式,表達式計算的結果通常為整數,用于定位各種類型文件中某個數據的位置或參與循環。調用變量的表達式的格式為[KF|x],字符“KF”為調用變量的標識,“x”為節點中定義的變量名稱。調用參數的值的表達式為[KWL|n],字符“KWL”為調用參數的值的標識,“n”為一個參數定義名稱。該表達式的含義為調用參數定義n獲取的值。調用自定義函數的表達式為FucDef(Name),這類表達式使用范圍最廣,FucDef為需要進行調用的自定義函數(自定義函數可以通過編程實現對數據信息的各種處理邏輯),Name為參數定義名稱。該表達式的含義為根據Name的正則表達式匹配結果,按空格進行拆分后的數量個數。調用正則表達式的表達式則通常用于在各種類型的文件中,使用正則表達式來查找所需的知識信息,正則表達式需要根據需求進行自定義。以上提及的各類表達式可多次組合使用,以完成對所有類型文件的知識抽取。
設有一供應商網頁某單元模塊信息顯示如圖2所示(由于知識抽取只抽取文字信息,已去除網頁上的各類效果),現需對此網頁的“供應鏈管理”和“商界評論”兩塊后的文章進行供應鏈知識元相關信息的抽取和存儲,即需讀取到“基于第四方物流的供應鏈協同管理研究”和“客戶關系管理成為電子商務時代制勝法定”兩篇文章。

具體實現的XML文件描述如下:
<?xml version=“1.0”encoding=“gb2312”?>
<Knowledge DrawOut>
<General>
<Owner>gyd</Owner>
<Time>2012-03-01</Time>
<Mode>HTML</Mode>
<XML Purpose >1</XML Purpose > <!-說明此 XML文件描述的是知識元抽取-->
</General>
<Knowledge Defines>
<Knowledge Define>
<Knowledge Name> 供應鏈管理 </Knowledge Name><!- 知識信息參數名稱為供應鏈管理-->
<Knowledge Type>string</Knowledge Type><!- 知識信息類型為字符串類型'
<Row Type>0</Row Type><!- 不需要重復讀取多行數據-->
<Row>2</Row><!- 取第二行的內容 -->
<Col>2</Col><!- 取第二列的內容,即讀取到“基于第四方物流的供應鏈協同管理研究”這篇文章-->
<Mark>獲取HTML文件中Table的位置</Mark>
<Prefix></Prefix><!-若用正則表達式讀取則需用到前綴來控制讀取范圍-->
<Surfix> </Surfix><!-若用正則表達式讀取則需用到后綴來控制讀取范圍-->
<Table NO>1</Table NO><!- 針 對 HTML 文 件 中 多 個Table給出Table號-->
<Disp Name></Disp Name><!- 此處用于供應鏈信息的重新構造,顯示的名稱-->
<Knowledge Value Type></Knowledge Value Type>
<Table CellName></Table CellName>
<Table Name></Table Name>
<Table Type></Table Type>
……
</Knowledge Define>
<Knowledge Define>
<Knowledge Name> 商界評論 </Knowledge Name><!- 名稱為商界評論-->
<Knowledge Type>string</Knowledge Type><!- 類型為字符串類型-->
<Row Type>0</Row Type><!- 不需要重復讀取多行數據-->
<Row>3</Row><!- 取第三行的內容 -->
<Col>2</Col><!- 取第二列的內容,即讀取到“客戶關系管理成為電子商務時代的制勝法寶”這篇文章-->
<Mark>獲取HTML文件中Table的位置</Mark>
<Prefix></Prefix><!- 若用正則表達式讀取則需用到前綴來控制讀取范圍-->
<Surfix></Surfix><!-若用正則表達式讀取則需用到后綴來控制讀取范圍-->
<TableNO>1</Table NO><!- 針對 HTML文件中多個 Table給出Table號-->
<Disp Name></Disp Name><!- 此處用于供應鏈信息的重新構造,顯示的名稱-->
<Knowledge Value Type></Knowledge Value Type>
<Table Cell Name></Table Cell Name>
<Table Name></Table Name>
<Table Type></Table Type>
……
</Knowledge Define>
……
</Knowledge Defines>
</Knowledge DrawOut>
將XML技術應用于供應鏈知識管理系統中,可以有效地解決供應鏈中多企業數據交換和知識流高度共享、集成以及高效率運作問題。目前XML技術在供應鏈知識管理系統中的應用取得了一定的效果,但對于一些極為復雜和零散的數據類型仍需用自定義的函數表達式進行處理,這種處理方式需要一定的開發人員投入較多的工作時間才能完成,所以,下一步需要努力的方向是找出這些復雜、零散數據的共性,用正則表達式或是定制的方式來完成知識的抽取。
[1]馬士華,林勇.供應鏈管理[M].北京:高等教育出版社,2006.
[2]王道平,賈潔.一種基于Web Service的敏捷供應鏈知識服務系統框架模型[J].情報雜志,2010,(5):148-151.
[3]張志清,秦嶺.供應鏈知識管理及系統框架模型研究[J].情報雜志,2007,(4):19-21.
[4]王道平,李賀.基于知識流的敏捷供應鏈知識服務模式研究[J].軟科學,2010,24(3):1-3.
[5]金鑫.面向分布式創新的知識共享機制研究[D].杭州:浙江大學,2009.
[6](美)HMDeitel,PJDeitel,等.XML編程技術大全[M].北京:清華大學出版社,2011.