日韩天天综合网_野战两个奶头被亲到高潮_亚洲日韩欧美精品综合_av女人天堂污污污_视频一区**字幕无弹窗_国产亚洲欧美小视频_国内性爱精品在线免费视频_国产一级电影在线播放_日韩欧美内地福利_亚洲一二三不卡片区

XSLT中文入門(mén)(2)_動(dòng)易Cms教程

編輯Tag賺U幣
教程Tag:暫無(wú)Tag,歡迎添加,賺取U幣!



1.4 什么是XPath

XPath是XSLT的重要組成部分,我們將在第四章講解它的具體語(yǔ)法。那么XPath是什么呢?我們首先來(lái)了解一下XSL系列的"家族"關(guān)系。如下圖:


XSL在轉(zhuǎn)換XML文檔時(shí)分為明顯的兩個(gè)過(guò)程,第一轉(zhuǎn)換文檔結(jié)構(gòu);其次將文檔格式化輸出。這兩步可以分離開(kāi)來(lái)并單獨(dú)處理,因此XSL在發(fā)展過(guò)程中逐漸分裂為XSLT(結(jié)構(gòu)轉(zhuǎn)換)和XSL-FO(formatting objects)(格式化輸出)兩種分支語(yǔ)言,其中XSL-FO的作用就類(lèi)似CSS在HTML中的作用。而我們這里重點(diǎn)討論的是第一步的轉(zhuǎn)換過(guò)程,也就是XSLT。

另外,在學(xué)習(xí)XML時(shí)我們已經(jīng)知道XML是一個(gè)完整的樹(shù)結(jié)構(gòu)文檔。在轉(zhuǎn)換XML文檔時(shí)可能需要處理其中的一部分(節(jié)點(diǎn))數(shù)據(jù),那么如何查找和定位XML文檔中的信息呢,XPath就是一種專(zhuān)門(mén)用來(lái)在XML文檔中查找信息的語(yǔ)言。XPath隸屬XSLT,因此我們通常會(huì)將XSLT語(yǔ)法和XPath語(yǔ)法混在一起說(shuō)。

用一種比較好理解的解釋?zhuān)杭偃鐚ML文檔看作一個(gè)數(shù)據(jù)庫(kù),XPath就是SQL查詢(xún)語(yǔ)言;假如將XML文檔看成DOS目錄結(jié)構(gòu),XPath就是cd,dir等目錄操作命令的集合。

1.5 XSLT和CSS的比較

CSS同樣可以格式化XML文檔,那么有了CSS為什么還需要XSLT呢?因?yàn)镃SS雖然能夠很好的控制輸出的樣式,比如色彩,字體,大小等,但是它有嚴(yán)重的局限性,就是:

(1) CSS不能重新排序文檔中的元素;

(2) CSS不能判定和控制哪個(gè)元素被顯示,哪個(gè)不被顯示;

(3) CSS不能統(tǒng)計(jì)計(jì)算元素中的數(shù)據(jù);

換句話(huà)說(shuō),CSS只適合用于輸出比較固定的最終文檔。CSS的優(yōu)點(diǎn)是簡(jiǎn)潔,消耗系統(tǒng)資源少;而XSLT雖然功能強(qiáng)大,但因?yàn)橐匦滤饕齒ML結(jié)構(gòu)樹(shù),所以消耗內(nèi)存比較多。

因此,我們經(jīng)常將它們結(jié)合起來(lái)使用,比如在服務(wù)器端用XSLT處理文檔,在客戶(hù)端用CSS來(lái)控制顯示。可以減少響應(yīng)時(shí)間。


1.6 XSLT和IE5

在XSLT草案發(fā)布不久,微軟就在IE4中提供了支持XSL功能的預(yù)覽版本,到IE5.0發(fā)布時(shí),正式全面支持XSLT,可是由于IE5發(fā)布的比XSLT1.0標(biāo)準(zhǔn)時(shí)間早,因此在IE5.0中支持的XSTL功能和XSLT 1.0略有不同。(呵呵~~XML推行的主要原因之一就是解決HTML過(guò)分依靠瀏覽器的問(wèn)題,現(xiàn)在微軟又想標(biāo)新立異?)。好在微軟的IE5.5中執(zhí)行的標(biāo)準(zhǔn)已經(jīng)和W3C的XSLT1.0基本相近。但令人頭疼的是IE5.0已經(jīng)發(fā)行了幾百萬(wàn)套,您使用的XSLT很可能不能被客戶(hù)的瀏覽器正確執(zhí)行。目前XSLT 1.1仍在發(fā)展中,W3C及有關(guān)組織也在和微軟協(xié)商爭(zhēng)取獲得統(tǒng)一。呵呵~~故事還遠(yuǎn)遠(yuǎn)沒(méi)有結(jié)束噢。

注重:本文中提到的語(yǔ)法都是根據(jù)XSLT 1.0的標(biāo)準(zhǔn)來(lái)講的,沒(méi)有任何微軟的"方言"。

XSLT輕松入門(mén)第二章:XSLT的實(shí)例
作者: 阿捷
2.XSLT的實(shí)例


2.1 XSLT如何轉(zhuǎn)換XML


2.2 一個(gè)實(shí)例


2.3 過(guò)程解析


2.4 XSLT的用途

2.1 XSLT如何轉(zhuǎn)換XML

我們打個(gè)有趣的比方,你玩過(guò)橡皮泥吧,用不同的模子按上去,就可以做出需要的外形。假如我們假設(shè)XML數(shù)據(jù)文檔是一塊大橡皮泥,XSLT就象是一個(gè)模子,用力一按,就做出需要的外形來(lái)---符合不同需要的HTML文檔。

具體看下面的過(guò)程示意圖:


我們將XML原文檔輸入,用XSL作為模板,通過(guò)轉(zhuǎn)換引擎,最終輸出需要的HTML文檔。其中的轉(zhuǎn)換引擎就是比喻中"用力一按"的過(guò)程。在具體應(yīng)用中,有專(zhuān)門(mén)的軟件來(lái)實(shí)現(xiàn)這個(gè)轉(zhuǎn)換過(guò)程,名為XML Processor。目前已經(jīng)有很多 Processor 軟件(下面將具體提到),在IE5.5中也已經(jīng)內(nèi)嵌了XML Processor。
2.2 一個(gè)實(shí)例


現(xiàn)在我們來(lái)看一個(gè)簡(jiǎn)單的XSLT實(shí)際應(yīng)用例子,獲得一些感官上的熟悉。很多網(wǎng)頁(yè)設(shè)計(jì)師看到類(lèi)似HTML的代碼才會(huì)放心,代碼是那樣的親切和熟悉。

例子1: "Hello, world!"
hello world作為第一個(gè)教程已經(jīng)是程序語(yǔ)言中的慣例了。我們也遵守這個(gè)慣例,看看如何利用XSLT來(lái)顯示"hello world"。雖然這個(gè)例子沒(méi)有什么實(shí)際用途,但是請(qǐng)大家不要急,后面還有更具體的例子。

查看更多 動(dòng)易Cms教程  動(dòng)易Cms模板

來(lái)源:模板無(wú)憂(yōu)//所屬分類(lèi):動(dòng)易Cms教程/更新時(shí)間:2006-06-13
相關(guān)動(dòng)易Cms教程