This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: namespace-uri() method returns emty,using xalan 2.0
- To: xsl-list at lists dot mulberrytech dot com
- Subject: Re: [xsl] namespace-uri() method returns emty,using xalan 2.0
- From: Oleg Tkachenko <olegt at multiconn dot com>
- Date: Tue, 13 Nov 2001 10:39:43 +0200
- Organization: Multiconn International
- References: <20011113043930.8616.qmail@mailweb12.rediffmail.com>
- Reply-to: xsl-list at lists dot mulberrytech dot com
challa sumalatha wrote:
> Hey list:
> i tried with all of the following options to get the namespace-uri(),all of my efforts are in vain.In all of these cases it returns empty.Help needed....
> xml:
> <?xml version="1.0"?>
> <a:root xmlns:a="name-a">
> <b:sub xmlns:b="name-b"/>
> <c:sub xmlns:c="name-c"/>
> </a:root>
> xsl:method1:
> <?xml version="1.0"?>
> <xsl:stylesheet
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
> version="1.0"
> xmlns:a="name-a" xmlns:b="name-b"
> xmlns:c="name-c">
> <xsl:template match="/">
> <xsl:for-each select="a:root">
> <uri><xsl:value-of select="namespace-uri()"/></uri>
> </xsl:for-each>
> </xsl:template>
> </xsl:stylesheet>
This one works fine for me on msxml3 and saxon and because of its
simplicity it have to work :) I got
<uri xmlns:a="name-a" xmlns:b="name-b" xmlns:c="name-c">name-a</uri>
> xsl: method:2
> <?xml version="1.0"?>
> <xsl:stylesheet
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
> version="1.0"
> xmlns:a="name-a" xmlns:b="name-b"
> xmlns:c="name-c">
> <xsl:template match="/">
> <xsl:for-each select="*/[name()='a:root']">
This is XPath syntax error - predicate always requires nodetest, you
probably mean *[name()='a:root'], which is tough version of a:root.
I guess the problem is in your processor, which one are you using?
--
Oleg Tkachenko
Multiconn International, Israel
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list