Re: [xsl] reference to undeclared namespace prefix:'xsl'

Subject: Re: [xsl] reference to undeclared namespace prefix:'xsl'
From: Jeni Tennison <mail@xxxxxxxxxxxxxxxx>
Date: Sun, 29 Apr 2001 19:49:34 +0100
Hi Stefan,

> as far as I understand xsl, the entity should be substituted inside my
> stylesheet whenever I use &ntilde; but it seems as if the xsl engine tries
> to use <xsl:text> before knowing the xsl-namespace.
> so, what is wrong? can I not use any xsl-elements (as <xsl:text above)
> before declaring the xsl-namespace?
> I saw a lot examples in the internet doing the same thing as I want to do.
> but mine does simply not work.

XML Spy uses MSXML to do its processing. The trouble is that MSXML
merges XML parsing with namespace parsing, so it tries to view the
entity that you declare as a little piece of XML, and interpret as
such, so the namespace prefix on the xsl:text gets it confused.  If
you try the same trick with a different processor, you won't get the
same problem.

The solution is to add a namespace declaration to the xsl:text in your
entity, so to use:

<!ENTITY ntilde
"<xsl:text xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>&#241;</xsl:text>">

Or, of course, to declare &ntilde; simply as a character entity rather
than using xsl:text around it (the additional benefit of that is that
you could include it wherever you wanted, for example in attribute
values).

I hope that helps,

Jeni

---
Jeni Tennison
http://www.jenitennison.com/



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread