Software AG是德國(guó)的一家多年從事系統(tǒng)軟件、ERP、電子商務(wù)產(chǎn)品和應(yīng)用解決方案的軟件廠商。Software
AG以MainFrame和數(shù)據(jù)庫(kù)技術(shù)起家,代表產(chǎn)品有兩大類:Enterprise Transaction
Suite包括ADABAS、NATURAL(4GL),Power Suite for
Internet包括Tamino、Bolero、EntireX。該公司設(shè)計(jì)開(kāi)發(fā)的企業(yè)資源規(guī)劃(ERP)產(chǎn)品Prodis可以在Unix、Windows
NT以及IBM AS/400等操作系統(tǒng)上運(yùn)行,適用于編制從銷售到生產(chǎn)的規(guī)劃,并可用Software
AG的Natural程序設(shè)計(jì)語(yǔ)言進(jìn)行修改使之適應(yīng)公司的具體需要。另外,Software
AG還通過(guò)從微軟獲得授權(quán)進(jìn)行DCOM的跨系統(tǒng)移植工作,從而使得其基于DCOM的產(chǎn)品支持包括Sun Solaris、OS/390、Digital
Unix、IBM AIX、OpenVMS和Linux在內(nèi)的6種操作系統(tǒng)。Tamino Server是Software
AG進(jìn)軍電子商務(wù)市場(chǎng)的又一武器。
Tamino
是一種基于XML的信息服務(wù)器,可以用于電子商務(wù)系統(tǒng)的應(yīng)用和開(kāi)發(fā)。Tamino實(shí)現(xiàn)了完整的XML數(shù)據(jù)庫(kù)系統(tǒng),而不僅僅提供一種在數(shù)據(jù)庫(kù)管理系統(tǒng)同
Web應(yīng)用間的轉(zhuǎn)換接口。Tamino使得異構(gòu)數(shù)據(jù)的存取變得更加容易,這些數(shù)據(jù)可以是簡(jiǎn)單的文本,也可以是聲音、圖像、視頻等多媒體數(shù)據(jù);數(shù)據(jù)的來(lái)源將
不受限制,不論數(shù)據(jù)是來(lái)自于原始XML資料庫(kù)(XML
Store和X-Machine),還是從現(xiàn)有的文檔甚至各種數(shù)據(jù)庫(kù)系統(tǒng)來(lái)源讀取。通過(guò)預(yù)先定義一組文檔類型描述格式,再借助系統(tǒng)內(nèi)置的Tamino
Schema
Editor,使得開(kāi)發(fā)者可以方便地定義需要的底層數(shù)據(jù)結(jié)構(gòu);基于URL方式的數(shù)據(jù)存取方式更是大大方便了XML數(shù)據(jù)的存儲(chǔ)與檢索,使得程序員可以從編寫(xiě)
繁瑣的XML語(yǔ)法分析器代碼中解放出來(lái);Tamino Server提供Server Extensions編程接口,允許用戶利用Visual
Studio開(kāi)發(fā)COM組件,通過(guò)在組件對(duì)象中嵌入商業(yè)邏輯,從而開(kāi)發(fā)出適合于用戶自己的應(yīng)用系統(tǒng)。
Tamino
Server的結(jié)構(gòu)如下:

由圖可以看出,Tamino提供如下功能:
- 通過(guò)XML Store和X-Machine實(shí)現(xiàn)XML對(duì)象的存儲(chǔ)與檢索機(jī)制
- 通過(guò)SQL Store 和SQL Engine實(shí)現(xiàn)SQL數(shù)據(jù)的存儲(chǔ)與檢索機(jī)制
- 通過(guò)X-Node實(shí)現(xiàn)同外部異構(gòu)數(shù)據(jù)源和應(yīng)用間的接口
- 通過(guò)Data Map管理XML數(shù)據(jù)的存取機(jī)制
- 通過(guò)Tamino Manager進(jìn)行多個(gè)Tamino服務(wù)器的Internet遠(yuǎn)程管理
Tamino Server具有幾個(gè)顯著的優(yōu)點(diǎn):
- 使得跨平臺(tái)、跨系統(tǒng)間異構(gòu)數(shù)據(jù)的交換與存取成為可能。在這里,XML起著不可忽視的作用。
- 高效。作為XML引擎的X-Machine使得Tamino可以快速高效地處理大量的數(shù)據(jù)。XML數(shù)據(jù)直接以原始的對(duì)象型格式存儲(chǔ),無(wú)需轉(zhuǎn)換成其他格式,減少了中間環(huán)節(jié),大大提高了數(shù)據(jù)處理的效率。
- 可擴(kuò)展性。X-Node的引入,使得Tamino可以同多種數(shù)據(jù)源和應(yīng)用系統(tǒng)聯(lián)結(jié),進(jìn)一步拓展了Tamino的應(yīng)用環(huán)境。Server
Extension 編程接口使得開(kāi)發(fā)者可以開(kāi)發(fā)適合自己需要的應(yīng)用系統(tǒng)。
- 可管理性。通過(guò)Tamino Manager可以進(jìn)行多個(gè)Tamino服務(wù)器的Internet遠(yuǎn)程管理。
- 開(kāi)放式標(biāo)準(zhǔn)。Tamino遵循開(kāi)放式DBMS原理提供如OLE-DB、DCOM、ODBC和JDBC等標(biāo)準(zhǔn)接口。交換數(shù)據(jù)格式采用W3C標(biāo)準(zhǔn)XML,查詢所采用的W3C草案XQL相信也會(huì)在不久的將來(lái)成為國(guó)際標(biāo)準(zhǔn)。
- 支持全文檢索。
與此同時(shí),Tamino Server也有它自己的弱點(diǎn):
- Tamino在XML元素內(nèi)容上支持多內(nèi)碼,但不支持元素標(biāo)記的多內(nèi)碼轉(zhuǎn)換;另外,Tamino 工具也不支持多內(nèi)碼的顯示。
- 不支持URL直接的XSL樣式化輸出
- URL-Based的XML數(shù)據(jù)更新功能較弱
最后,來(lái)說(shuō)說(shuō)Tamino
Server應(yīng)用。Tamino是一種基于XML的數(shù)據(jù)管理系統(tǒng),實(shí)現(xiàn)了XML數(shù)據(jù)的存儲(chǔ)與檢索。在電子商務(wù)、跨平臺(tái)計(jì)算、信息發(fā)布等領(lǐng)域有較好的應(yīng)用。利用Tamino開(kāi)發(fā)的步驟如下:
- 需求分析:設(shè)計(jì)出數(shù)據(jù)字典和商業(yè)規(guī)則
- 定義數(shù)據(jù)結(jié)構(gòu):利用Tamino Schema
Editor完成數(shù)據(jù)結(jié)構(gòu)的定義。通過(guò)指定相應(yīng)的Map-type類型,設(shè)置數(shù)據(jù)的存儲(chǔ)方式:XML Store或SQL Store。
- 編寫(xiě)代碼:
- 利用URL編寫(xiě)XML數(shù)據(jù)處理腳本。
原理:在客戶端通過(guò)Script動(dòng)態(tài)生成XML片斷或XQL語(yǔ)句,然后以GET或POST方式發(fā)送至Web服務(wù)器處理。
- 利用Tamino Server Extensions編寫(xiě)消息處理代碼
原理:利用Visual
Studio開(kāi)發(fā)COM組件。Tamino Server
Extensions支持下面兩種類型的函數(shù)(SXF):Mapping函數(shù)和事件函數(shù)。其中Mapping函數(shù)又包括Mapping
In函數(shù),即當(dāng)XML數(shù)據(jù)存儲(chǔ)入Tamino Server 時(shí)由文檔處理器調(diào)用的函數(shù);Mapping Out函數(shù),即當(dāng)從Tamino
Server檢索XML數(shù)據(jù)時(shí)調(diào)用的函數(shù)。事件函數(shù)主要用于通知Server
Extensions有關(guān)事件的發(fā)生,包括事務(wù)事件(如Commit/Rollback)、會(huì)話事件(如會(huì)話結(jié)束)、Server事件(如斷開(kāi)與Server的連接)。