Re: [xsl] Default namespace in XML document

Subject: Re: [xsl] Default namespace in XML document
From: drkm <fgeorges.spam@xxxxxxxxx>
Date: Tue, 1 Nov 2005 22:53:43 +0100
On 11/1/05, 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.

  Do you qualify element names in XPath with the namespace?

    ~> cat default-ns.xsl
    <?xml version="1.0" encoding="ISO-8859-15"?>
    <xsl:stylesheet version="1.0"
                    xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
                    xmlns:ns="http://www.fgeorges.org/dummy";>
      <xsl:output method="text"/>
      <xsl:template match="/">
        <!-- Note the XPath expression. -->
        <xsl:value-of select="ns:root/ns:elem"/>
      </xsl:template>
    </xsl:stylesheet>

    ~> cat default-ns.xml
    <root xmlns="http://www.fgeorges.org/dummy";>
      <elem>value</elem>
    </root>

    ~> xsltproc default-ns.xsl default-ns.xml
    value

--drkm

Current Thread