我创建了一个XML文件,并使用xsl将其转换为HTML。但是,当我将目标命名空间添加到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'>
当XML中存在行 xmlns='http://xml.netbeans.org/schema/XmlSchema'
时,浏览器不会正确处理它。删除此行后,它可以正常工作。有什么问题?
答案 0 :(得分: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。