1)XML文檔的內容和結構是完全分離的。
這個特性給XML的應用帶來了很大的好處。基於這壹特性,企業系統可以很容易地實現內容管理和流程管理的完全分離。比如系統架構師可以只專註於流程運行中各個環節的接口定義,而所有部門都可以專註於內容發布和維護。
比如微軟的產品Biztalk,利用XML內容和結構的分離,實現了內容和流程定義的分離。另壹種廣泛使用的技術是XSL。因為XML文件的內容和結構是分離的,XSL可以在不影響內容的情況下改變XML文件的結構。
2)強大的互操作性
大多數純文本文件格式都有這個優點。純文本文件可以輕松穿越防火墻,在不同操作系統的不同系統之間進行通信。作為純文本文件格式,XML也有這個優勢。
3)標準化和統壹化
XML有統壹的標準語法,任何系統或產品支持的任何XML文檔都有統壹的格式和語法。這使得XML具有跨平臺、跨系統的特點。相比之下,作為文本語言,JavaScript的標準遠不如XML統壹,以至於同壹個靜態頁面在不同的瀏覽器中往往會產生不同的結果,腳本程序員往往需要在程序入口判斷客戶端支持的腳本版本。
4)支持多碼。
與普通的文本文檔相比,XML文檔本身包含了所使用代碼的記錄,這方便了多語言系統中的數據處理。
5)可擴展性
XML是壹種可擴展的語言,可以根據XML的基本語法進壹步限定其使用範圍和文檔格式,從而定義壹種新的語言。比如:MathML(數學標記語言)、CML(化學標記語言)、TecML(技術數據標記語言),每種語言都是在其特定的環境下使用的。
使用XML的壹些場合
1,數據交換
XML被用來在應用程序和公司之間交換數據已經不是什麽秘密,它無疑應該被列為第壹位。那麽,為什麽XML在這個領域如此重要呢?原因是XML使用元素和屬性來描述數據。在數據傳輸的過程中,XML始終保留著父子關系等數據結構。幾個應用程序可以共享和解析同壹個XML文件,而不需要使用傳統的字符串解析或反匯編過程。
相反,普通文件不描述每個數據段(頭文件中除外),不保留數據關系結構。使用XML進行數據交換可以使應用程序更加靈活,因為XML數據可以通過位置(像普通文件壹樣)或元素名(來自數據庫)來訪問。
2.網絡服務
Web服務是最激動人心的革命之壹,它使使用不同系統和不同編程語言的人們能夠相互交流和共享數據。它的基礎是Web服務器使用XML在系統之間交換數據。交換數據通常用XML標記,這可以使協議壹致,例如,在簡單對象處理協議(Simple
目標
接近
協議,
SOAP)平臺。
SOAP可以在用不同編程語言構造的對象之間傳遞消息。這意味著C#對象可以與Java對象通信。這種通信甚至可以在不同操作系統上運行的對象之間進行。DCOM,
CORBA還是Java
RMI只能在緊耦合的對象之間傳遞消息,而SOAP可以在松耦合的對象之間傳遞消息。
3.內容管理
XML只使用元素和屬性來描述數據,而不提供顯示數據的方法。這樣,XML提供了壹種獨立於平臺和語言的標記內容的極好方法。
使用XSLT這樣的語言,XML文件可以很容易地轉換成各種格式的文件,比如HTML。
WML,
PDF,
平的
文件,
艾迪,
等壹下。XML具有在不同系統平臺之間運行並轉換成不同格式的目標文件的能力,這使得它成為內容管理應用系統中的壹個極好的選擇。
4.Web集成
現在越來越多的設備也支持XML。Web開發人員可以使用XML在個人電子助理和瀏覽器之間傳輸數據。
為什麽要將XML文本直接發送到這樣的設備?這樣做的目的是讓用戶更多的自己掌握數據展示方式,更多的體驗練習的快樂。傳統的客戶機/服務(C/S)模式必須應用於服務器,以便獲得數據排序或改變顯示格式。而XML則可以直接處理數據,不需要經過向服務器申請查詢和返回結果的雙向“旅程”,同時也不需要在設備上配置數據庫。
您甚至可以在設備上修改XML文件,並將結果返回給服務器。想象壹下,壹臺具備互聯網功能和XML支持的冰箱會給市場帶來多大的沖擊。從此不用早起去取奶了!
5、準備工作
許多應用程序將配置數據存儲在各種文件中,例如。INI文件。雖然這種文件格式已經使用了很多年,並且非常好,但是XML仍然以更好的方式為應用程序標簽提供數據。在中使用類。NET,如XmlDocument和XmlTextReader,用XML格式標記編寫數據可以使其可讀性更好,並且可以方便地集成到應用系統中。使用XML配置文件的應用程序可以方便地處理所需的數據,不需要像其他應用程序壹樣重新編譯來修改和維護應用程序系統。
XML在Web應用中的安全性描述
XML風險描述的優勢在網絡風險中的應用
1.
網絡中的風險
Web中的風險主要從技術方面分為安全漏洞和威脅攻擊。安全漏洞主要包括硬件缺陷、軟件缺陷和配置不合理;威脅攻擊是利用安全漏洞來破壞系統。風險不是孤立的,壹個威脅往往由幾個威脅組成,壹個攻擊可以導致其他攻擊。這些都需要更好的風險描述工具。
2.
XML風險描述的優勢
傳統的風險描述主要包括適用於規範數據的關系數據庫描述、更規範的數據和適用於非規範知識的本體描述。關系數據庫不易擴展,風險之間的關系不易用二元關系表示,關系表設計困難,本體描述困難,概念之間的關系難以確定,壹致性差。
XML將關系數據庫和個體描述結合起來,有效地解決了傳統風險描述的不足。同時,XML
Schema很容易確定XML文檔的格式,這使得風險描述更容易實現和有效。
3.
XML在Web風險描述中的應用
常見漏洞發布(常見
弱點
曝光(CVE)介紹了漏洞的XML格式文檔;OASIS和OWASP分別提出了自己的基於XML的漏洞描述語言。如果在這些漏洞描述中添加有關風險發現、風險危害和風險解決的信息。這樣,在漏洞發現和描述的基礎上,風險性質(發生概率、攻擊成本等)的定量分析。)並增加了自動選擇策略的條件,為系統的自動防禦和策略的自動執行創造了可能。
XML開放性優勢在Web服務中的體現
1.
網
服務的特點
網
服務是壹種新的面向功能和方法的應用集成技術。它是壹種標準的、開放的應用集成技術。它基於XML文檔進行服務描述、服務請求和反饋結果,基於HTTP協議的信息傳輸易於訪問和返回結果,基於WSC的開放協議與平臺和操作系統無關,實現了不同平臺操作系統上的互操作,使異構平臺上的應用易於集成,促進了Web的快速發展。這些發展對Web的開放性提出了更高的要求。
2.
XML開放性的優勢
XML的開放性主要是指它與平臺和技術提供者無關。它解決了電子數據交換(電子
數據
交換,EDI)。EDI的主要缺點是國際上對交換數據的格式和語義沒有統壹的標準。雖然世界各國都制定了針對不同行業數據交換的EDL標準,但是為了與不同行業甚至不同國家的合作夥伴進行數據交換,壹個系統都要購買並安裝各種自適應的軟件插件進行數據轉換,更不用說各個行業的特定用戶或多或少都會添加壹些個性化的標準來實現這些數據。因此,利用EDI技術實現平臺系統的成本和復雜度相對較高。
3.
XML開放性在Web服務中的應用
由於XML的開放性,軟件廠商提供的許多軟件產品都支持XML,這使得XML成為不同用戶的異構應用系統之間進行數據交換的標準語言,具有數據交換的透明性。每個用戶只要保證自己的信息系統提供的數據符合XML規範,就不用擔心數據接收方的解碼問題。不同用戶采用統壹的XML標識協議,交換信息的雙方不會受到對方使用的不同系統的影響。XML可以表達任意層次的結構化數據嵌套,檢查數據的正確性,支持用戶之間復雜的數據交換。可擴展標記語言
Schema(XSD)定義了壹組標準的數據類型,並給出了壹種語言對其進行擴展,從而實現了用戶之間的數據共享。因為網絡
服務本身的特點,XML就是Web。
服務跨平臺、透明的穿透協作用戶的防火墻提供了保障。
XML加密優勢在Web中的應用
數據加密、數字簽名和訪問控制是保護Web數據的常用技術,而XML作為壹種元語言,已經成為Web異構環境下不同類型和領域數據交換的開放標準。
XML文檔的訪問控制機制不同於壹般的訪問控制機制,傳統的訪問控制機制不能直接應用於XML文檔的訪問控制。這是因為XML查詢語言(Xquery)的存在,可以直接找到每壹個XML語義元素。訪問控制模型必須能夠在多個粒度級別上為XML語義元素建立訪問權限,通用訪問控制對此沒有特殊要求。
用戶訪問Web的異構性和動態性使得傳統的基於身份的認證機制不適合應用。
1.
XML加密的優勢
XML可以對壹部分交換的數據進行加密,而TLS/SSL只能保證通信傳輸過程中的數據安全,不能對不同的用戶施加不同的權限來保證用戶信息的安全,即TLS/SSL不需要對壹部分交換的數據進行加密。XML加密可以實現多方之間的安全會話,即每壹方都可以與任何通信方保持安全或非安全狀態,在同壹文檔中交換安全或非安全數據。XML加密可以作為SOAP協議的安全擴展,因為SOAP協議是基於XML的,通過嵌入加密的XML數據,可以在消息傳輸的應用層靈活地采用合適的加密策略。
2.
XML加密在Web中的應用
在Web中,可以在文檔中嵌入XML加密方法,將安全粒度細化到XML文檔元素和屬性的級別,實現同壹文檔不同部分的安全需求。通過XML加密,可以將壹個文檔加密呈現給不同的用戶不同的視圖,用戶只能看到授權的內容。