常見的 XSLT 錯誤

MIME 型別

您的伺服器需要使用 XML MIME 型別(text/xmlapplication/xml)傳送原始檔和樣式表。要找出當前型別,請在 Mozilla 中載入檔案並檢視頁面資訊。或者使用下載工具,這些工具通常會顯示 MIME 型別。

在 Firefox 6 及更高版本中,您還可以使用官方 XSLT MIME 型別:application/xslt+xml

名稱空間

XSLT 1.0 名稱空間為 http://www.w3.org/1999/XSL/Transform。較舊版本的 IE 使用不同的名稱空間。但是,這些版本也使用了 XSLT 的草稿版本,該版本與最終成為 XSLT 1.0 規範的版本不相容。Firefox 僅支援官方的 XSLT 1.0 版本。

缺少的功能

XSLT 1.0 規範中有一些功能,不幸的是 Firefox 尚未支援。具體來說

  • XPath 表示式中的 namespace:: 軸。希望將來可以支援此功能。
  • disable-output-escaping 屬性。此功能控制序列化構造的輸出文件的方式。但是 Firefox 從不序列化輸出文件,因此該屬性實際上不適用。雖然我們可以嘗試新增一些啟發式方法來序列化和重新解析僅應用了 disable-output-escaping 的輸出文件的一部分,但啟發式方法通常會出錯並導致意外結果,因此我們一直不願新增此功能。樣式表中通常包含類似 <xsl:text disable-output-escaping="yes">&nbsp;</xsl:text> 的程式碼,這相當於在樣式表中放置 &#160;,這在所有 XSLT 引擎中都能很好地工作。我們確實意識到缺少 disable-output-escaping 是一個問題,我們希望找到解決方法,但到目前為止,我們還沒有找到任何好的解決方案。
  • <xsl:namespace-alias> 元素。

如果您想幫助解決上述任何功能,我們將不勝感激。