msxml解析xml文檔

msxml解析xml文檔

ID:18499983

大?。?7.50 KB

頁數(shù):21頁

時間:2018-09-18

msxml解析xml文檔_第1頁
msxml解析xml文檔_第2頁
msxml解析xml文檔_第3頁
msxml解析xml文檔_第4頁
msxml解析xml文檔_第5頁
資源描述:

《msxml解析xml文檔》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在教育資源-天天文庫

1、·VC++中利用MSXML解析XML文檔·作者:未知??來源:網(wǎng)絡??日期:2007-3-2221:55:45·一、XML簡介XML(XtensibleMarkupLanguage,即擴展標記語言)的發(fā)展起源于1996年。當時,出版界巨頭和Web業(yè)內(nèi)人士經(jīng)過共同討論,提出了創(chuàng)建SGML(StandardGeneralizedMarkupLanguage,即標準通用標識語言)子集(HML)的建議。該子集專用于Web,具有可擴展(或可擴充)性,并且能利用結(jié)構(gòu)化標記語言的所有高級功能,但摒棄了SGML的復雜性。XML規(guī)范的第一份草稿于1996年11月發(fā)布后不久,1997年

2、1月首個XML解析器就面世了。隨后,便出現(xiàn)了XML的應用以及新的規(guī)范和解析器。HTML(HypertextMarkupLanguage)語言是大家所熟悉的開發(fā)網(wǎng)頁的一種標記語言,但它不是一種編程語言,它的主要標記是針對文檔內(nèi)容本身結(jié)構(gòu)的描述,因機器本身是不能夠解析它的內(nèi)容的。XML語言是SGML語言的子集,它保留了SGML主要的使用功能,同時大大減小了SGML的復雜性。它不僅能表示文檔的內(nèi)容,而且可以表示文檔的結(jié)構(gòu),這樣在能夠被人類理解的同時,也能夠被機器所理解。雖然HTML是SGML的一個應用,XML是SGML的一個子集,但是XML絕不是在HTML上添加某些元素而

3、形成的,它們之間是有很大區(qū)別的。最大的區(qū)別就是XML允許使用者為某種特殊目的而定義自已的元素。除此之外,另一個最主要的區(qū)別就是XML致力解決的問題,正是在使用HTML時所遇到的一些特殊問題。XML要求遵循一定的嚴格標準,其分析程序比HTML瀏覽器對語法和結(jié)構(gòu)的要求更加嚴格。XML文檔每次分析的結(jié)果都一致,而HTML在不同的瀏覽器中可能會作出不同的分析和顯示。同時,XML標準是對數(shù)據(jù)的處理應用,而不只是針對Web頁的,它還可涉及到數(shù)據(jù)庫電子商務系統(tǒng),以及任何顯示系統(tǒng)的高級應用。開發(fā)者可根據(jù)特定的工業(yè)需求,利用XML創(chuàng)建自定義的數(shù)據(jù)結(jié)構(gòu)。這些數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)庫可以在許多設

4、備上查看,而不需要使用自定義的接口在不同的顯示設備上查看相同的數(shù)據(jù)。XML主要有三個要素:文檔類型聲明(DTD:DocumentTypeDeclaration)或XMLSchema(XML大綱)、可擴展樣式語言(XSL:eXtensibleStylesheetLanguage)和可擴展鏈接語言(XLink:eXtensibleLinkLanguage)。DTD和XML大綱規(guī)定了XML文件的邏輯結(jié)構(gòu),定義了XML文件中的元素、元素的屬性以及元素與元素屬性之間的關系;Namespace(名域)實現(xiàn)了統(tǒng)一的XML文檔數(shù)據(jù)表示以及數(shù)據(jù)的相互集成;XSL是用于規(guī)定XML文檔呈

5、現(xiàn)樣式的語言,它使得數(shù)據(jù)與其表現(xiàn)形式相互獨立,比如XSL能使Web瀏覽器改變文檔的表示法,如數(shù)據(jù)顯示順序的變化,不需要再與服務器進行通訊。通過改變樣式表,同一個文檔可以顯示得更大,或者經(jīng)過折疊只顯示外面的一層,或者可以變?yōu)榇蛴〉母袷?。而XLink將進一步擴展目前Web上已有的簡單鏈接。二、文檔對象模型(DOM)DOM是DocumentObjectModel(文檔對象模型)的簡稱,是對Web文檔進行應用開發(fā)、編程的應用程序接口(API)。作為W3C公布的一種跨平臺、與語言無關的接口規(guī)范,DOM提供了在不同環(huán)境和應用中的標準程序接口,可以用任何語言實現(xiàn)。DOM采用對象模

6、型和一系列的接口來描述XML文檔的內(nèi)容和結(jié)構(gòu),即利用對象把文檔模型化。這種對象模型實現(xiàn)的基本功能包括:·描述文檔表示和操作的接口;·接口的行為和屬性;·接口之間的關系以及互操作。DOM可對結(jié)構(gòu)化的XML文檔進行解析,文檔中的指令、元素、實體、屬性等所有內(nèi)容個體都用對象模型表示,整個文檔被看成是一個有結(jié)構(gòu)的信息樹,而不是簡單的文本流,生成的對象模型就是樹的節(jié)點,對象同時包含了方法和屬性。因此,對文檔的所有操作都是在對象樹上的進行。在DOM中,樹中的一切都是對象,不管是根節(jié)點還是實體的屬性。在DOM中主要有以下三個對象:·XML文檔對象XML文檔既是一種對象,同時又代表

7、整個XML文檔。它由根元素和子元素組成?!ML節(jié)點對象XML節(jié)點對象代表的是XML文檔內(nèi)部的節(jié)點,如元素、注釋、名字空間等?!ML節(jié)點列表XML文檔模塊列表代表了節(jié)點的集合。利用DOM,開發(fā)人員可以動態(tài)地創(chuàng)建XML文檔,遍歷結(jié)構(gòu),添加、修改、刪除內(nèi)容等。其面向?qū)ο蟮奶匦?,使人們在處理XML解析相關的事務時節(jié)省大量的精力,是一種符合代碼重用思想的強有力編程工具。三、MSXML從理論上說,根據(jù)XML的格式定義,我們可以自己編寫一個XML的語法分析器,但實際上微軟已經(jīng)給我們提供了一個XML語法解析器,即一個叫做MSXML.DLL的動態(tài)鏈接庫,實際上它是一個COM(

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。