I am finding that XML documents that have default namespace declared are not handled by XSLT engine in both Firefox and IE. Maybe I'm missing something in the xsl to let XSLT engine know about the namespace. Here's a simple example.
test.xml
<?xml version="1.0"?>
<body xmlns="http://www.w3.org/TR/REC-html40">
<b>foo bar</b>
</body>
test.xsl
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="body">
<html>
<xsl:apply-templates/>
</html>
</xsl:template>
<xsl:template match="b">
123 456
</xsl:template>
</xsl:stylesheet>
If I remove the default ns declaration from the xml, it works.
<?xml version="1.0"?>
<body>
<b>foo bar</b>
</body>
Is there anything I should add to xsl so that it can accept xml documents with default namespace declared?