Re: [xsl] Need help with XSLT: adding new node btw existing elements

Subject: Re: [xsl] Need help with XSLT: adding new node btw existing elements
From: "Nishi Bhonsle" <nishiandprafull@xxxxxxxxx>
Date: Wed, 16 Aug 2006 15:46:50 -0700
Okay, I could remove the blabla namespace from the output xml doc by adding
exclude-result-prefixes="b" in my xslt doc.

But what about the xmlns="" that gets added to the elements? How can I
remove that?

Thanks!

On 8/16/06, Nishi Bhonsle <nishiandprafull@xxxxxxxxx> wrote:
David:
I tried this but in the output, i notice that the namespace gets added
as attributes to the environment as well as variable elements. Is
there way that can be avoided?

xslt -

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"; xmlns:b="blabla">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="node() | @*">
<xsl:copy>
 <xsl:apply-templates select="node() | @*" />
 </xsl:copy>
 </xsl:template>
 <xsl:template match="b:environment">
<environment>
 <variable id="SAROOTDIR" value="D:\Dir1"/>
 <variable id="SADATADIR" value="D:\Dir2"/>
 </environment>
 </xsl:template>
</xsl:stylesheet>

and the output looks like -

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="C:\test1.xslt"?>
<test xmlns="blabla">
<comp id="New">
<process-type id="home">
<environment xmlns="" xmlns:b="blabla">
<variable xmlns="" id="SAROOTDIR" value="D:\Dir1"/>
<variable xmlns="" id="SADATADIR" value="D:\Dir2"/>
</environment>
</process-type>
</comp>
</test>

Thanks!


On 8/16/06, David Carlisle <davidc@xxxxxxxxx> wrote: > > > <xsl:template match="environment"> > > that matches elements called environment in no namespace but you have no > such elements, your original example looked like: > > <test xmlns="blabla"> > <comp id="New"> > <process-type id="home" module-id="TESTER" status="enabled"> > <environment> > > so your document has an element environment in the namespace blabla > to match an element of that name put > xmlns:b="blabla" in your xsl stylesheet and use > > <xsl:template match="b:environment"> > > (This is a FAQ) > > David

Current Thread