麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

XSLT輕松入門第一章:XSLT概念

2019-11-18 12:48:12
字體:
來源:轉載
供稿:網友

  XSLT輕松入門第一章:XSLT概念
  
  大家好,從今天起我們將一起來學習xml家族的另一種語言XSLT,XSLT類似Html中的CSS,但是比CSS功能要強大的多。學習XSLT的前提是您對XML已經有一些了解,假如您沒有學習過XML,可以先點這里(http://www.etechnic.com.cn/columns/xml_1.shtml)看我先前寫的一篇文章《XML輕松入門手冊》。XSLT可以說更偏向是一種程序語言,但它沒有常見程序語言復雜,甚至比js等腳本語言還簡單,所以不必擔心學習困難。阿捷將依然站在普通設計師的角度,用平實易懂的語言,由淺入深的介紹XSLT。好了,讓我們一起來探索XSLT的秘密吧!
  
  聲明:因為XSLT的標準在不斷發展,語法也在不斷擴充,我們下面所學習的知識是以1999年11月16日發布的XSLT 1.0為基準的,所以可能是不完整的,最新的資料請到W3C網站(http://www.w3.org/TR/xslt)。
  
  提綱
  
  本文共分五大章:XSLT概念,XSLT的實例,XSLT的元素語法,XPath的語法,XSLT的資源。
  
  1.XSLT的概念
  
  1.1 什么是XSLT
  
  1.2 為什么要用XSLT
  
  1.3 XSLT的歷史
  
  1.4 什么是XPath
  
  1.5 XSLT和CSS的比較
  
  1.6 XSLT和IE5
  
  1.XSLT的概念
  
  我們首先來澄清一個概念,大家可能聽說過XSL(eXtensible Stylesheet Language),XSL和我們這里說的XSLT從狹義上理解是一樣的,而按照W3C的標準,XSLT的說法更嚴格些,因此我們在文章中統一使用XSLT的稱法。它們之間具體的關系我們會在下面講述。
  
  1.1 什么是XSLT
  
  XSLT的英文標準名稱為eXtensible Stylesheet Language Transformation。根據W3C的規范說明書(http://www.w3.org/TR/xslt),最早設計XSLT的用意是幫助XML文檔(document)轉換為其它文檔。但是隨著發展,XSLT已不僅僅用于將XML轉換為HTML或其它文本格式,更全面的定義應該是:
  
  XSLT是一種用來轉換XML文檔結構的語言。
  
  1.2 為什么要用XSLT
  
  我們已經知道,XML是一種電腦程序間交換原始數據的簡單而標準的方法。它的成功并不在于它輕易被人們書寫和閱讀,更重要的是,它從根本上解決了應用系統間的信息交換。因為XML滿足了兩個基本的需求:
  
  (1).將數據和表達形式分離。就象天氣預告的信息可以顯示在不同的設備上,電視,手機或者其它。
  
  (2).在不同的應用之間傳輸數據。電子商務數據交換的與日俱增使得這種需求越來越緊迫。
  
  為了使數據便于人們的閱讀理解,我們需要將信息顯示出來或者打印出來,例如將數據變成一個HTML文件,一個PDF文件,甚至是一段聲音;同樣,為了使數據適合不同的應用程序,我們必須有能夠將一種數據格式轉換為另一種數據格式,比如需求格式可能是一個文本文件,一個SQL語句,一個HTTP信息,一定順序的數據調用等。而XSLT就是我們用來實現這種轉換功能的語言。將XML轉換為HTML,是目前XSLT最主要的功能。
  
  1.3 XSLT的歷史
  
  想很多其他XML家族成員一樣,XSLT是由W3C起草和制定的。它的主要發展歷程如下:
  
  .1995年由James Clark提議;
  
  .1997年8月正式提案為XSL;
  
  .1998年5月由Norman Walsh完成需求概要;
  
  .1998年8月18日XSL草案發布;
  
  .1999年11月16日正式發布XSL 1.0推薦版本。
  
  目前,XSLT仍然在快速的發展中,XSLT1.1的草案已經可以在W3C網站(http://www.w3.org/TR/xslt11)上看到。
  
  1.4 什么是XPath
  
  XPath是XSLT的重要組成部分,我們將在第四章講解它的具體語法。那么XPath是什么呢?我們首先來了解一下XSL系列的"家族"關系。如下圖:
  
  XSL在轉換XML文檔時分為明顯的兩個過程,第一轉換文檔結構;其次將文檔格式化輸出。這兩步可以分離開來并單獨處理,因此XSL在發展過程中逐漸分裂為XSLT(結構轉換)和XSL-FO(formatting objects)(格式化輸出)兩種分支語言,其中XSL-FO的作用就類似CSS在HTML中的作用。而我們這里重點討論的是第一步的轉換過程,也就是XSLT。
  
  另外,在學習XML時我們已經知道XML是一個完整的樹結構文檔。在轉換XML文檔時可能需要處理其中的一部分(節點)數據,那么如何查找和定位XML文檔中的信息呢,XPath就是一種專門用來在XML文檔中查找信息的語言。XPath隸屬XSLT,因此我們通常會將XSLT語法和XPath語法混在一起說。
  
  用一種比較好理解的解釋:假如將XML文檔看作一個數據庫,XPath就是SQL查詢語言;假如將XML文檔看成DOS目錄結構,XPath就是cd,dir等目錄操作命令的集合。
  
  1.5 XSLT和CSS的比較
  
  CSS同樣可以格式化XML文檔,那么有了CSS為什么還需要XSLT呢?因為CSS雖然能夠很好的控制輸出的樣式,比如色彩,字體,大小等,但是它有嚴重的局限性,就是:
  
  (1) CSS不能重新排序文檔中的元素;
  
  (2) CSS不能判定和控制哪個元素被顯示,哪個不被顯示;
  
  (3) CSS不能統計計算元素中的數據;
  
  換句話說,CSS只適合用于輸出比較固定的最終文檔。CSS的優點是簡潔,消耗系統資源少;而XSLT雖然功能強大,但因為要重新索引XML結構樹,所以消耗內存比較多。
  
  因此,我們經常將它們結合起來使用,比如在服務器端用XSLT處理文檔,在客戶端用CSS來控制顯示。可以減少響應時間。
  
  1.6 XSLT和IE5
  
  在XSLT草案發布不久,微軟就在IE4中提供了支持XSL功能的預覽版本,到IE5.0發布時,正式全面支持XSLT,可是由于IE5發布的比XSLT1.0標準時間早,因此在IE5.0中支持的XSTL功能和XSLT 1.0略有不同。(呵呵~~XML推行的主要原因之一就是解決HTML過分依靠瀏覽器的問題,現在微軟又想標新立異?)。好在微軟的IE5.5中執行的標準已經和W3C的XSLT1.0基本相近。但令人頭疼的是IE5.0已經發行了幾百萬套,您使用的XSLT很可能不能被客戶的瀏覽器正確執行。目前XSLT 1.1仍在發展中,W3C及有關組織也在和微軟協商爭取獲得統一。呵呵~~故事還遠遠沒有結束噢。
  
  注重:本文中提到的語法都是根據XSLT 1.0的標準來講的,沒有任何微軟的"方言"。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 欧美ab| 免费黄色在线电影 | 日本中文字幕网址 | 国产又粗又爽又深的免费视频 | 精品国产一二区 | 深夜福利视频绿巨人视频在线观看 | 激情综合网俺也去 | 色污视频在线观看 | 黄色免费电影网址 | 青青国产在线视频 | 日韩视频1 | 久久久麻豆| 久久久国产精品免费观看 | 粉嫩粉嫩一区二区三区在线播放 | 国产三级国产精品国产普男人 | 视频一区二区三区在线播放 | 美国黄色毛片女人性生活片 | 黄色影院网站 | 国产精品自拍99 | 国产一区二区精彩视频 | 91社| 亚洲视频在线观看免费 | 精品国产一区二区在线 | 精品一区二区三区免费看 | av手机在线免费播放 | 久草在线视频网 | 黄色片免费在线 | 中文字幕极速在线观看 | 精品国产乱码久久久久久丨区2区 | 三级国产三级在线 | 成人午夜网址 | 久草免费资源视频 | 成码无人av片在线观看网站 | av资源在线天堂 | 免费观看又色又爽又黄的崩锅 | 91看片淫黄大片欧美看国产片 | 美女一级视频 | 国产一区二区三区精品在线观看 | 免看黄大片aa | 性插视频 | 热@国产 |