<!ENTITY nbsp '<xsl:text> </xsl:text>'>
that defines nbsp to be a normal space " " if you want an html nbsp you
want   you could make that the definition of nbsp here, but I
usually find its as easy to type   as
but for the rest it all looks fine, and you should get the namespace
in teh result. xalan is very heavily used it's hard to believe that
they have a bug here, although you could ask on a xalan-specific list.
David
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list