2016-09-20 65 views
1

我試圖從我從託運人的API收到的XML響應文件生成運輸標籤,但是,當我嘗試通過我的瀏覽器訪問XML時,我得到這個加載樣式表時出錯:出現未知錯誤(805303f4 )錯誤。加載樣式表時出錯:發生了未知錯誤(805303f4)?

XML響應文件:

<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?> 
<?xml-stylesheet href="http://shippers-website.com/label.xsl" type="text/xsl"?> 

XSL文件:

<?xml version='1.0'?> 
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/TR/WD-xsl"> 

然後我試圖在本地打開我的電腦,這個XML文件,我保存了XML的本地副本和XSL文件,但是當我這樣做時,我會得到這個加載樣式表時出錯:解析XSLT樣式表失敗。錯誤。

我再變XSL文件命名空間從http://www.w3.org/TR/WD-xslhttp://www.w3.org/1999/XSL/Transform而且似乎對我的本地XML拷貝工作;這是一個好兆頭,但是,我需要這樣才能正確處理XML文件中列出的託運人網站的URL(例如http://shippers-website.com/label.xsl)。

他們告訴我,這個XML類型的響應文件適用於他們的其他客戶,所以我不知道爲什麼它不適合我。

有沒有人有當我打電話XML文件時,它的指向我的託運人的服務器XSL文件(例如http://shippers-website.com/label.xsl)爲什麼我得到這個錯誤的想法?

謝謝!

+1

'xmlns:xsl =「http://www.w3.org/TR/WD-xsl」'識別的語言可能適用於IE 5或6之類的舊IE版本,但肯定不適用於任何其他瀏覽器,如Firefox ,Chrome,Opera,因爲它們只實現了1999年由名稱空間「http:// www.w3.org/1999/XSL/Transform」標識的W3C XSLT 1.0標準。 –

回答

2

命名空間xmlns:xsl="http://www.w3.org/TR/WD-xsl"標識了Microsoft在1998年在IE4中發佈的早期版本的XSLT 1.0的實現,如果我沒記錯的話。它在一年內已​​經過時。 1999年發佈的W3C規範與微軟實施的草案大不相同(事實上,微軟的產品與早期的W3C草案有很大不同),而且微軟很快意識到了他們的錯誤,並爭先恐後地將WD-xsl替換爲符合標準的實現。

由於WD-xsl語言與XSLT 1.0有很多不同,因此將名稱空間更改爲XSLT 1.0命名空間通常不足以實現成功的轉換。我曾經有一段時間認爲微軟有一個工具來協助轉換,但我懷疑它在18年後才能獲得。實際上,WD-xsl的文檔現在幾乎是不可能找到的(有趣的是,在紙質規格的日子裏,埋葬東西要困難得多)。我不知道當前版本的IE仍然可以識別它,但是肯定沒有其他瀏覽器可以。

順便說一下,我的DNS服務器找不到域名shippers-website.com。

相關問題