Subject: Re: Removing unwanted namespaces
From: ram <ram_kurra@xxxxxxxxxxx>
Date: Fri, 13 Jan 2012 02:35:51 +0530 (IST)
|
hi Wendell,
this work for me but there is slight difference in namespace allignment.
here is the output i am getting
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<ns:abcdion xmlns:ns="http://abcd.com/abc/abcde/501/">
<!--Optional:-->
<ns:serviceRequest>
<!--Optional:-->
<dat:SessionId
xmlns:dat="http://abcdef.com/abcdef/abcdef">?</dat:SessionId>
<!--Optional:-->
<ns:Id>?</ns:Id>
</ns:serviceRequest>
</ns:abcdion>
</soapenv:Body>
</soapenv:Envelope>
what i was looking is
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns="http://abcd.com/abc/abcde/501/"
xmlns:dat="http://abcdef.com/abcdef/abcdef">>
<soapenv:Header/>
<soapenv:Body>
<ns:abcdion >
<!--Optional:-->
<ns:request>
<!--Optional:-->
<dat:SId >?</dat:SId>
<!--Optional:-->
<ns:Id>?</ns:Id>
</ns:request>
</ns:abcdion>
</soapenv:Body>
</soapenv:Envelope>
I know its not really big differene, but want to get the output as
expected.
--- On Thu, 12/1/12, Wendell Piez <wapiez@xxxxxxxxxxxxxxxx> wrote:
> From: Wendell Piez <wapiez@xxxxxxxxxxxxxxxx>
> Subject: Re: Removing unwanted namespaces
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Date: Thursday, 12 January, 2012, 9:40 PM
> Hi again,
>
> Yes, this will work, but I think Ram also said he wants all
> namespace declarations at the top. Since this logic
> effectively strips all namespace nodes except where they are
> needed, the declarations will only appear at the point (or
> points, within the tree hierarchy) of first use.
>
> (I also don't like using "*[local-name()='x']" tests but
> I'm unwilling to say they're bad, exactly. It's just that
> there are usually more graceful ways. :-)
>
> Cheers,
> Wendell
>
> On 1/11/2012 7:04 PM, Markus Abt wrote:
> > <?xml version="1.0"?>
> > <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
> version="1.0">
> >
> > <xsl:template match="@*|node()" priority="-1">
> > <xsl:copy>
> > <xsl:apply-templates
> select="@*|node()"/>
> > </xsl:copy>
> > </xsl:template>
> >
> > <xsl:template match="*">
> > <xsl:element
> name="{name(.)}" namespace="{namespace-uri(.)}">
> > <xsl:apply-templates
> select="@*|node()"/>
> > </xsl:element>
> > </xsl:template>
> >
> > <xsl:template
> match="*[local-name()='abcdHeader']"/>
> > <xsl:template
> match="*[local-name()='Context']"/>
> >
> > </xsl:stylesheet>
> >
> > If required, you need to add code to remove unwanted
> namespace
> > nodes from attributes in a similar way.
>
> --
> ======================================================================
> Wendell Piez
>
> mailto:wapiez@xxxxxxxxxxxxxxxx
> Mulberry Technologies, Inc.
> http://www.mulberrytech.com
> 17 West Jefferson Street
> Direct Phone:
> 301/315-9635
> Suite 207
>
> Phone:
> 301/315-9631
> Rockville, MD 20850
>
> Fax: 301/315-8285
> ----------------------------------------------------------------------
> Mulberry Technologies: A Consultancy Specializing in
> SGML and XML
> ======================================================================
|