[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] Removing unwanted namespaces


Subject: Re: [xsl] 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: [xsl] 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
> ======================================================================


Current Thread
Keywords
xml