最近,我喜歡上了XML編程,但又苦于它的美觀程度又不夠,找了許多書(shū)才搞定。
用XML好是蠻好,但它還是不太適合做顯示數(shù)據(jù)的語(yǔ)言。(比起HTML要查多了!)
XML文件作出來(lái)的東西看起來(lái)并不是那么美觀,但還是可以找到補(bǔ)救的方法。
XML可以只注重?cái)?shù)據(jù)與文件格式的描述,而顯示方面的工作就交給排版樣式表。
排版樣式表分:CSS和XSL。其中XSL非常適合XML。(在這里不討論CSS!)
現(xiàn)在開(kāi)始轉(zhuǎn)換吧!
XSL包含兩大部分:XSLT和XSL Formatting Object
XSLT(XSL Transformations)一種用來(lái)轉(zhuǎn)換XML文件的語(yǔ)言。
XSL Formatting Object:一組用來(lái)格式化(排版)語(yǔ)意的詞匯。
第一步:轉(zhuǎn)換
XSL處理器首先要做的是通過(guò)分析器(DOM或SAX)技術(shù)讀取XML標(biāo)記及數(shù)據(jù)。
DOM(Document Object Model)文件對(duì)象模型。(XML應(yīng)用上常利用DOM技術(shù)來(lái)訪問(wèn)XML數(shù)據(jù)文件。)
當(dāng)瀏覽器通過(guò)XML DOM對(duì)象讀取到XML的樹(shù)狀結(jié)構(gòu)與數(shù)據(jù)后,將XML樹(shù)狀結(jié)構(gòu)重新排行組合后產(chǎn)生一個(gè)暫時(shí)的數(shù)狀結(jié)構(gòu),這個(gè)樹(shù)狀結(jié)構(gòu)稱(chēng)為結(jié)果樹(shù)。
在這個(gè)結(jié)果樹(shù)產(chǎn)生后,若又出現(xiàn)了新的標(biāo)記或數(shù)據(jù),必須把它一起并入結(jié)果樹(shù)。
第二步:格式化轉(zhuǎn)換
結(jié)果樹(shù)也是樹(shù)狀結(jié)構(gòu),可以利用DOM技術(shù)訪問(wèn)結(jié)果樹(shù)的數(shù)據(jù),數(shù)據(jù)以節(jié)點(diǎn)方式顯示,并且預(yù)留一個(gè)記錄樣式的位置。
XSL處理其中的程序?qū)⑦@些數(shù)據(jù)轉(zhuǎn)換(格式化)為另一種Well-Formed XML文件(如:WML、HTML、VoiceXML等)。
完了,這只是個(gè)小小的啟示錄。
大家要加油,努力啊,國(guó)家正在大力推行XML,以抵抗微軟的進(jìn)攻。只要學(xué)好了XML,我們將大有作為的。
您可能感興趣的文章:- 解析在.net中使用XSLT轉(zhuǎn)換xml文檔的示例詳解
- 使用XSLT將XML數(shù)據(jù)轉(zhuǎn)換成HTML
- 在asp.net(C#)中采用自定義標(biāo)簽和XML、XSL顯示數(shù)據(jù)
- C#實(shí)現(xiàn)XSL轉(zhuǎn)換的方法