2011-10-07 63 views
0

我已經創建了一個XML文件並使用xsl將其轉換爲HTML。但是,當我將目標名稱空間添加到XML文件時,我的瀏覽器不能正確處理文件。當我刪除目標名稱空間時,它工作正常。定義目標名稱空間時,將xsl鏈接到XML不起作用

的XML如下:

<root xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' 
xmlns='http://xml.netbeans.org/schema/XmlSchema' 
xsi:schemaLocation='http://xml.netbeans.org/schema/XmlSchema XmlSchema.xsd'> 

當線路xmlns='http://xml.netbeans.org/schema/XmlSchema'存在於XML,瀏覽器不正確地進行處理。當這一行被刪除時,它可以正常工作。問題是什麼?

回答

0

問題似乎是,您不處理XSLT文件中的http://xml.netbeans.org/schema/XmlSchema名稱空間。

我猜...我很慚愧,我不得不猜測 - 當你不顯示你的代碼時,你如何看待有人能告訴你問題出在哪裏?

所以,我想你有這樣的事情:

<xsl:stylesheet 
    version="1.0" 
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
> 
    <xsl:template match="root"> 
    <!-- etc ... --> 
    </xsl:template> 
</xsl:stylesheet> 

,你應該

<xsl:stylesheet 
    version="1.0" 
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
    xmlns:xs='http://xml.netbeans.org/schema/XmlSchema' 
> 
    <xsl:template match="xs:root"> 
    <!-- etc ... --> 
    </xsl:template> 
</xsl:stylesheet> 

沒有命名空間的處理。相應地調整您的XSLT。

+0

如果你問我把XSL代碼,我會的!我從來不知道我必須在XSL文件中處理命名空間。它與我合作,謝謝。 – palAlaa

+0

@Alaa很好聽。下一次不需要心理調試的問題,請。 ;) – Tomalak