這些是導致我使用我寫的大多數程序XSLT的優勢;你的情況可能有所不同
1 XML的更舒適的操控
因爲XSLT是從地上爬起來用於處理XML數據而設計,有些人發現它有XML比大多數傳統編程語言中的低阻抗失配;這對於XQuery也是如此。給定一個設計合理的XML輸入,通常(有些人會說幾乎總是)使用XSLT比使用其他語言更容易處理它(無論用途如何)。我懷疑,XML的許多認真用戶會以這種精神推廣XSLT的優勢列表,並且只要輸入數據是XML格式,就更喜歡XSLT(或XQuery)。在XSLT中生成XML也很容易,而許多使用其他語言編寫的程序員似乎發現生成格式良好的XML的過程容易出錯。
2聲明,函數式語言
XSLT是一種聲明,功能性語言,有着許多的語言在該類的強項。一些面向程序語言的程序員發現很難精確地挖掘它,因爲它是聲明性的和功能性的;非程序員發現XSLT比來自C或Java的程序員更容易學習的情況並不少見。 (一些程序員似乎覺得這是一個危險的經歷,這也許可以解釋一些他們展示給XSLT和XML的敵意的。)
3 XML語法
因爲XSLT樣式表是用XML編寫,很容易讓任何良好的現成XML編輯器提供出色的語法指導;我的經驗(值得一提的是)在使用XSLT寫作時,我幾乎沒有發生語法錯誤 - 與我在其他語言中的經歷形成鮮明對比 - ,並且當我犯一個錯字時,它立即顯而易見並且可以立即糾正。
當然,有些人一般喜歡XSLT,但是明確地指出其不喜歡的XML語法;它需要所有種類來創造一個世界。
4模板和控制
技術上的數據驅動的流動,XSLT的特徵在於其使用的模板和圖案上的輸入匹配,以控制執行的流程。這使編寫XSLT程序變得更加容易,這些XSLT程序在出現意外輸入或輸入格式演變時表現穩健,並且(與XSLT用於計算頂級樣式表和導入樣式表之間的模板優先級的規則相結合)更容易編寫添加的新程序少量的功能到現有的程序。
XSLT 1.0不太適合處理非XML數據;在XSLT 2.0中,這樣做更容易。
在我最後的位置他們大量使用XSLT將XML轉換爲HTML。這項工作在10年前很有用,現在如果你有一個ASP.net MVC平臺,沒有理由這樣做。 – cgatian 2013-05-07 17:15:07
使用XSL將XML轉換爲其他XML,尤其是混合內容XML或輸入和輸出類似的地方。對於其他任何東西都可能有更好的工具。 – 2013-05-07 17:16:56
[XSLT Web框架的不錯選擇?]的可能重複(http://stackoverflow.com/questions/2854583/xslt-good-choice-for-web-framework) – newtover 2013-05-07 17:21:25