[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
Re: [xsl] Default namespace in XML document
Subject: Re: [xsl] Default namespace in XML document
From: George Cristian Bina <george@xxxxxxx>
Date: Wed, 02 Nov 2005 00:31:33 +0200
|
Hi,
When you specify a NameTest in XPath 1.0 using an element name without a
prefix then that means the element from no namespace. If you want to
specify elements from a namespace then you need to use a prefix mapped
to that namespace. In XSLT 2.0 you can use the xpath-default-namespace
attribute to specify the namespace to be used for names without a prefix
used in XPath 2.0 expressions.
If you want your stylesheet to ignore the namespace of the elements then
use something like
*[local-name()='MyRoot']
instead of
MyRoot
in your XPath expressions.
Hope that helps,
George
---------------------------------------------------------------------
George Cristian Bina
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com
Kevin L.. Cobb wrote:
I have an XML document with a default namespace indicated at the root.
Something like this:
<MyRoot xmlns="http://www.mysite.com">
<!-- a lotta XML in here -->
</MyRoot>
My XSLT to parse the XML does not work as expected because of the
default namespace, i.e. when I remove the namespace, everyting works as
expected. All XPATH statements find their intended values. Since I don't
have control over the source XML and the included default namespace,
what should I do to my XSLT so that my XPATH expressions find their
intended values?
BTW: I'm using the XERCES parser.
Thanks,
Kevin
| Current Thread |
|
George Cristian Bina - 1 Nov 2005 22:30:21 -0000 <=
|
|