版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、1;. XSL (全稱是:可擴展的樣式單語言,全稱是:可擴展的樣式單語言,the eXtensible Stylesheet Language)比比CSS樣式單功能要強大的多。樣式單功能要強大的多。XSL的一個主要的用途就是將的一個主要的用途就是將XML文檔文檔轉換成轉換成HTML格式的文件,然后再交付給瀏覽器,由瀏覽器顯示轉換的格式的文件,然后再交付給瀏覽器,由瀏覽器顯示轉換的結果。結果。2;.CSS缺點缺點: 只能處理簡單的、順序固定的只能處理簡單的、順序固定的XML文件,不能處理復雜的、高度結構化的文件,不能處理復雜的、高度結構化的XML文檔。文檔。XSL標準特點:標準特點: 是一種基于
2、是一種基于X M L的語言,它被設計用來轉換的語言,它被設計用來轉換X M L文檔到另一種文檔到另一種X M L文檔、文檔、HTML文檔或其他格式對象。文檔或其他格式對象。XSL規(guī)范內容:規(guī)范內容: XSL轉換:轉換:XSLT XSL格式化對象:格式化對象:FO3;.l建立一個建立一個XSL樣式表文件樣式表文件: XSL遵循遵循XML的所有格式和規(guī)則。后綴名為的所有格式和規(guī)則。后綴名為.xsl, 也是由純文本組成。也是由純文本組成。l將將XSL樣式表鏈接至樣式表鏈接至XML文件文件: XML文件使用處理指令文件使用處理指令xml-stylesheet來鏈接來鏈接XSL文件。文件。4;.元素名元
3、素名描述描述xsl:apply-imports應用從樣式表中導入的模板規(guī)則應用從樣式表中導入的模板規(guī)則xsl:apply-templates對當前節(jié)點或者當前節(jié)點的子節(jié)點應用模板規(guī)則對當前節(jié)點或者當前節(jié)點的子節(jié)點應用模板規(guī)則xsl:attribute生成一個屬性生成一個屬性xsl:attribute-set定義一個屬性的集合定義一個屬性的集合xsl:call-template調用一個已經命名的模板調用一個已經命名的模板xsl:choose用于多條件分支的選擇用于多條件分支的選擇xsl:comment創(chuàng)建一個注釋節(jié)點創(chuàng)建一個注釋節(jié)點xsl:copy創(chuàng)建當前節(jié)點的拷貝創(chuàng)建當前節(jié)點的拷貝(不包括子節(jié)
4、點與屬性不包括子節(jié)點與屬性)xsl:copy-of創(chuàng)建當前節(jié)點的拷貝創(chuàng)建當前節(jié)點的拷貝(包括子節(jié)點與屬性包括子節(jié)點與屬性)xsl:element生成一個元素節(jié)點生成一個元素節(jié)點xsl:fallback指定處理器遇到不支持的指定處理器遇到不支持的XSL元素時需要運行的代碼元素時需要運行的代碼xsl:for-each對節(jié)點集中的每一個節(jié)點進行循環(huán)對節(jié)點集中的每一個節(jié)點進行循環(huán)xsl:if用于條件判斷用于條件判斷xsl:import將一個樣式表的內容導入到另一個樣式表將一個樣式表的內容導入到另一個樣式表(導入者優(yōu)先權低導入者優(yōu)先權低)xsl:include包含一個樣式表的內容導入到另一個樣式表中包含
5、一個樣式表的內容導入到另一個樣式表中(優(yōu)先權一樣優(yōu)先權一樣)5;.xsl:message輸出一條信息輸出一條信息xsl:namespace-alias在輸出中為命名空間指定別名在輸出中為命名空間指定別名xsl:number轉換為數(shù)值轉換為數(shù)值xsl:otherwise條件分支的一種條件分支的一種xsl:output指定文件的輸出格式指定文件的輸出格式xsl:param定義一個本地的或者全局的參數(shù)定義一個本地的或者全局的參數(shù)xsl:preserve-space指定空白的保留格式指定空白的保留格式xsl:processing-instruction在輸出中產生一條處理指令在輸出中產生一條處理指令x
6、sl:sort對輸出結果排序對輸出結果排序xsl:stylesheet包含其他樣式表元素的文檔元素包含其他樣式表元素的文檔元素xsl:template對指定的節(jié)點定義一個處理規(guī)則對指定的節(jié)點定義一個處理規(guī)則xsl:text在輸出中生產文本在輸出中生產文本xsl:transform定義一個樣式表的根元素定義一個樣式表的根元素xsl:value-of選擇指定節(jié)點的值選擇指定節(jié)點的值xsl:variable定義一個本地或全局的變量定義一個本地或全局的變量xsl:when用于多條件分支用于多條件分支xsl:with-param定義模板傳遞的參數(shù)定義模板傳遞的參數(shù)6;.1.1.stylesheetsty
7、lesheet元素元素stylesheet元素是一個包含其他樣式表元素的根元素,是命名空間被聲明的地方。元素是一個包含其他樣式表元素的根元素,是命名空間被聲明的地方。元素的第一個屬性是元素的第一個屬性是XSLXSL的版本。第二個屬性是的版本。第二個屬性是xmlns:xslxmlns:xsl,用來控制用來控制XSLXSL轉換推薦的命名空間。還有一個命名空間為轉換推薦的命名空間。還有一個命名空間為7;.stylesheet元素有一下屬性元素有一下屬性:default-space 原文件的文本空白是否保留原文件的文本空白是否保留indent-result 在輸出文檔中的文本空白處理在輸出文檔中的文本
8、空白處理language 設置嵌入于設置嵌入于XSL樣式表中的腳本語言類型。樣式表中的腳本語言類型。result-ns 輸出部分的樣式。輸出部分的樣式。8;.2. template元素元素 template元素元素用用match屬性從屬性從XML選取滿足條件的節(jié)點,征對這些特定的選取滿足條件的節(jié)點,征對這些特定的節(jié)點形成一個特定輸出形式的模板。節(jié)點形成一個特定輸出形式的模板。XSL樣式表中可以有很多樣板規(guī)則樣式表中可以有很多樣板規(guī)則,每個必須包含在,每個必須包含在和和之間。例如:之間。例如:9;.有有2個屬性:個屬性:match 確定什么樣的情況下執(zhí)行此模板。作為一種簡化的說明,確定什么樣的情
9、況下執(zhí)行此模板。作為一種簡化的說明,它的值是一個模式或X P a t h表達式表示應該使用哪一個節(jié)點的模板。更明確地說,任何更明確地說,任何X P a t h表達式返回一個節(jié)點列表,與表達式返回一個節(jié)點列表,與m a t c h屬性值屬性值相匹配的節(jié)點候選。相匹配的節(jié)點候選。language 確定在此模板中執(zhí)行什么腳本語言,其取值與確定在此模板中執(zhí)行什么腳本語言,其取值與HTML中的中的SCRIPT標記的標記的LANGUAGE屬性的取值相同,缺省值是屬性的取值相同,缺省值是Jscript。10;.3.value-of元素元素 獲取來源樹中對應節(jié)點的值,然后將值放到結果樹中,如果獲取來源樹中對應
10、節(jié)點的值,然后將值放到結果樹中,如果select=“”,表示將目表示將目前對應元素的值顯示出來。例如:前對應元素的值顯示出來。例如: 11;. 有一個叫做有一個叫做select的屬性,它的值是一個的屬性,它的值是一個XPath表達式表達式, ,就是定位節(jié)點樹中節(jié)點的就是定位節(jié)點樹中節(jié)點的表達式。表達式。如:如: H1xsl:value-of select=/12;.lXSL文件:文件:ex23.xsllXML文件文件: ex23.xml13;.6.2.1 用用for-each處理循環(huán)處理循環(huán) 如在如在XML中有這樣的數(shù)據(jù)中有這樣的數(shù)據(jù):小禹小禹春華春華秋實秋實要讀取這三個作者名字,是一個一個地
11、按要讀取這三個作者名字,是一個一個地按author/name方法來讀方法來讀取嗎,可有多個這樣的取嗎,可有多個這樣的name呀?如果有一種程序性的語句來循環(huán)讀取有呀?如果有一種程序性的語句來循環(huán)讀取有多好?。《嗪冒?!14;. XSL提供了這樣的具有程序語言性質的語句:提供了這樣的具有程序語言性質的語句:用它讀取這三個作者名字的方法如下用它讀取這三個作者名字的方法如下: 屬性屬性select,顧名思義,選取,它可以選定顧名思義,選取,它可以選定XML中特定唯一的標記,也可中特定唯一的標記,也可以選擇某一類相同的標記,我們稱之為結點集。以選擇某一類相同的標記,我們稱之為結點集。15;.見書上的例子
12、見書上的例子:程序代碼程序代碼6-6與程序代碼與程序代碼6-716;.6.2.2 應用模板應用模板 xsl:apply-templates應用樣板規(guī)則,有應用樣板規(guī)則,有select屬性屬性,用來設置只選取某些指定的子用來設置只選取某些指定的子元素處理。例如:元素處理。例如:17;.見實例程序代碼見實例程序代碼6-818;.XSL程序程序:ex24.xslXML程序程序:ex24.xml19;.20;.2.匹配元素名匹配元素名21;.3.匹配子節(jié)點匹配子節(jié)點22;.23;.4.匹配元素后代匹配元素后代24;.5.匹配屬性匹配屬性25;.6.通過通過ID匹配匹配26;.7.匹配文本節(jié)點匹配文本節(jié)
13、點27;.8.匹配注釋匹配注釋28;.9.匹配操作指令匹配操作指令29;.10.使用使用”或或”操作符操作符30;.Xml文件:文件:ex25.xmlDTD文件:文件:ex25.dtdXsl文件:文件:ex25-1.xsl, ex25-2.xsl31;.32;.6.4.2 XPath軸線軸線33;.6.4.3 基本的基本的XPath表達式表達式軸線軸線:元素元素測試測試軸線軸線:屬性屬性例子:例子:見書上表見書上表63,第,第227頁。頁。34;.6.4.4 基本的基本的XPath縮寫表達式縮寫表達式表達式縮寫self:node.parent:node.child:namenameattribute:namename/descendant-or-self:node()/例子:例子:見書上表見書上表65,第,第227頁。頁。35;.Xml文件:文件:ex26.xmlXsl文件:文件:ex26.xsl36;.37;.6.5.2 字符串類型字符串類型38;.39;.6.5.3 數(shù)值類型數(shù)值類型40;.6.5.4 布爾類型布爾類型函
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度數(shù)據(jù)中心服務器租賃合同
- 2024醫(yī)院病房清潔服務合同
- 2024年展覽保險服務協(xié)議
- 2024年度0kv線路工程建設的合作開發(fā)合同
- 2024年度婚禮主持委托合同
- 2024年定制版太陽能系統(tǒng)維護合同
- 2024年度太陽能熱水系統(tǒng)安裝合同
- 2024年度城市供水供電供氣合同
- 2024年三人股東責任承擔協(xié)議
- 04版建筑工程合同
- 網上競價響應文件【模板】
- QC七大手法與新QC七大手法
- 照明路燈工程 投標文件(技術方案)
- 數(shù)控車削編程試卷及答案
- 大學思政課價值觀課件
- 2024年教師普通話培訓心得體會范文3篇
- 車寨礦井及選煤廠1.5Mt-a新建工程環(huán)評
- 2024年T8聯(lián)考高三第二次學業(yè)質量語文試題答案講評課件
- 【川教版】一年級上冊 《生命 生態(tài) 安全》第一課 我和我的布娃娃 課件
- 設備管理的標準化與規(guī)范化
- 公司組織架構圖
評論
0/150
提交評論