曝光臺 注意防騙
網曝天貓店富美金盛家居專營店坑蒙拐騙欺詐消費者
的部分內容是最新形式的轉換。實際上,轉換語言被稱作X S L轉換部分(XSL Tr a n s f o r m a t i o n,
X S LT)。X S LT主要用來識別X M L文檔以便使用X S L樣式。即便它并沒有被設計成一種通用的轉
換語言,X S LT的彈性還是相當大的,允許你進行大多數X M L中的轉換、排序和組織工作,而不
需要編寫自己的程序代碼。實際上,你根據元素顯示的先后關系編寫X M L的轉換規則。在第9章,
你會了解編程者可以用來指定轉換規則的X S LT語法。你將學會如何根據自己提供的規則定位文
檔中特定元素的技術。然后了解如何指定在源X M L文檔上執行的轉換。完成這些之后,你就會
掌握使用X S LT執行X M L文檔的數據驅動操作的方法。
1.6.9 XML和數據庫
用We b前端連接關系型數據庫是相當常見的。但是, X M L的數據模式天生就是層次結構,
這會使得在將它們和大多數普通數據庫使用的關系型模式相匹配時遇到一些困難。雖然使用
X M L作為關系型數據庫的接口并不直接利用X M L的獨特功能,但它能將現有的數據引入到新的
系統中。既然X M L是一種流行的、與平臺無關的連接方式,那么編程者肯定需要一條途徑作為
X M L和數據庫之間的接口。許多數據庫廠商在意識到這一事實后,已經開始在自己的引擎中增
加對X M L的本機支持。
X M L從本質上講基本是層次性的,但大多數現有的、常見的數據庫系統都是關系型的。在
兩者進行映射時會導致某些問題。第1 0章會探討將X M L詞匯表映射到關系型表以及相反操作時
的有效策略。在了解了X M L能夠從哪些層次去改變應用程序與數據結構的接口方式后,這一章
將開發一個普通的腳本,它用來定義一個關系型數據庫中的、能夠映射到自己的X M L模式的表。
有了這些工具,你就可以完成自己的應用中負責連接服務器程序和后臺數據的部分。
1.6.10 服務器到服務器
支持X M L的We b應用程序能夠連接起來形成系統。到目前為止,大多數編程者都把We b應用
程序嚴格地視作客戶機-服務器結構。We b客戶機從We b服務器上獲取信息。當一個服務器訪問
數據庫時,它并不會向另一臺We b服務器尋求幫助。隨著時間的流逝,越來越多的應用程序資源
開始由We b服務器控制,這樣一來,實現多個服務器一起來解決問題的能力就變得重要起來。由
于一臺服務器能夠呼叫另一臺服務器以尋求數據和處理能力,我們可以在現有應用的基礎上編
制出精致的分布式程序。既然這些系統經常使用不同的服務器軟件和分布式計算技術,所以就
需要X M L來提供一個抽象層來集成不同的系統。從另一個服務器獲取X M L,進行操作,然后把
16使用XML 高級編程
下載
結果傳遞給客戶機是可以滿足客戶機請求的需要的。許多使用X M L來有效地完成這類工作的技
術正處在開發當中。其中包括X M L - R P C,簡單對象訪問協議( Simple Object Access Protocol,
S O A P),以及分布式We b數據交換( Web Distributed Data Exchange,W D D X)。
X M L - R P C是一種遠程執行駐留在服務器上的進程的協議。這與傳統的R P C非常相似,后者
允許我們命名一個過程以便執行并可以提供一個參數列表。X M L - R P C將X M L當作是完成這類工
作的途徑,這樣能夠減少與特定平臺有關的問題。因為是X M L,所以對于編程人員來說,使本
地資源可用于遠程執行就簡單化了。X M L - R P C已經在許多常見平臺上得以實現。
S O A P與X M L - R P C類似,也使用X M L來訪問H T T P之上的對象的方法和屬性。X M L用來描
述被調用的方法和被傳遞的數據,這樣能夠避免對任何特定類型的分布式對象技術的依賴。
W D D X是一種使用X M L串行化數據結構的技術。例如,它可以用作通過I n t e r n e t返回數據庫
結果的低級機制。
第11章將為你提供這方面的知識以及其他使用X M L進行服務器-服務器通信的方法。對于網
絡通信問題來說, X M L - R P C、S O A P和W D D X是非常明智的X M L應用方案。掌握了這些技術,
你就能夠更好地在現有的和未來的基于We b的資源的基礎上構建多層分布式系統。
當你讀完第11章之后,你會對何時何地什么樣的技術會更有效有更其清晰的概念。你會看
到一個服務器-服務器通信的實踐舉例,了解到當第一個服務器上沒有所需要的書籍時,如何從
另一個服務器上獲取圖書書目信息。
1.6.11 電子商務與XML
X M L被廣泛地認為是解決應用程序之間的數據交換問題的方案。電子商務,特別是商業組織
之間的交易,走到了X M L應用的最前列。許多年來,電子數據交換( Electronic Data Interchange,
E D I)是商業結構之間數據交換的標準(你可以訪問h t t p : / / w w w. g e o c i t i e s . c o m / Wa l l S t r e e t / F l o o r / 5 8 1 5 /
了解更多信息)。但是,E D I有許多缺陷,這極大地限制了它在大型商業結構和高額交易中的使用。
它使用特定的網絡和數據格式來交換數據。結果是E D I系統的實現成本高,時間長。典型的小型企
業根本負擔不起這些。X M L利用開放的I n t e r n e t所帶來的益處則改變了這些。定義適當的X M L詞匯
表能夠符合原先的E D I結構。這使得X M L的E D I實現能夠充分利用現有的第三方的X M L工具和解析
器。
在第1 2章中,你會看到X M L是如何應用到E D I中,創造出一種通用的、低花費的電子商務
結構。這與我們在前一節討論的服務器-服務器通信來說是一個巨大的飛躍。當信息從一個合作
者傳遞到另一個時,它所跨越的不僅僅是不同位置的服務器,而且是不同的格式。這樣一來,
詞匯表創建工具變得越來越重要。同樣,數據轉換的工具也是不可或缺。第1 2章將會把這兩個
問題緊密結合在一起。
X M L的流行和強大也使得它在數據交換領域占據了一席之地。看起來,簡單性是它的一個
很大的優勢。無論你是否對X M L在E D I上的應用感興趣,第1 2章中介紹的能夠簡化兩個應用程
序之間的數據交換的其他標準都將有助于你解決自己在計算技術方面的問題。看一看我們的圖
中國航空網 www.k6050.com
航空翻譯 www.aviation.cn
本文鏈接地址:
XML高級編程上(8)