Subject: RE: [xsl] Need help with XSLT: adding new node btw existing elements From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Wed, 16 Aug 2006 22:21:58 +0100 |
You also need to allow for the fact that the environment element is in namespace blabla. Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: Nishi Bhonsle [mailto:nishiandprafull@xxxxxxxxx] > Sent: 16 August 2006 19:47 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: Re: [xsl] Need help with XSLT: adding new node btw > existing elements > > I did add the xsl:stylesheet element but i dont get the > desired output ie the variable tags dont get added in. > > <?xml version="1.0" encoding="UTF-8"?> > <xsl:stylesheet version="1.0" > xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> > <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="environment"> > <environment> <variable id="SAROOTDIR" value="D:\Dir1"/> > <variable id="SADATADIR" value="D:\Dir2"/> </environment> > </xsl:template> </xsl:stylesheet> > > > On 8/16/06, Michael Kay <mike@xxxxxxxxxxxx> wrote: > > > Trying to load the following xsl in XMLSpy gives document > mal-formed > > > error. > > > > Mukul left out the xsl:stylesheet element to reduce noise > and save typing. > > > > If you didn't spot that, then we really are starting from > the basics... > > > > Michael Kay > > http://www.saxonica.com/ > > > > > > > > > Also, what if i have several occurences of the > environment element > > > in the doc and i need to add the new nodes to a specific > occurence > > > only? > > > ie > > > If I have to add the new nodes to the environment tag > that has comp > > > id = New, how can I change the xsl to do that? > > > > > > <?xml version = '1.0' encoding = 'UTF-8'?> <test xmlns="blabla"> > > > <comp id="Old"> <process-type id="home" > > > module-id="TESTER1" status="enabled"> <environment> > > > <variable id="TMP" value="C:\DOCUME~1\manez\LOCALS~1\Temp"/> > > > </environment> > > > </process-type> > > > </comp> > > > > > > <comp id="New"> > > > <process-type id="home" module-id="TESTER" status="enabled"> > > > <environment> </environment> </process-type> </comp> </test> > > > > > > On 8/16/06, Mukul Gandhi <gandhi.mukul@xxxxxxxxx> wrote: > > > > The transform requires to modify only the "environment" > > > element, and > > > > keeping rest of the structure same. To solve this problem, > > > you require > > > > an identity transform template, and a template to process the > > > > "environment" element. > > > > > > > > <xsl:template match="node() | @*"> <xsl:copy> > > > > <xsl:apply-templates select="node() | @*" /> </xsl:copy> > > > > </xsl:template> > > > > > > > > <xsl:template match="environment"> > > > > <environment> > > > > <variable id="SAROOTDIR" value="D:\Dir1"/> > > > > <variable id="SADATADIR" value="D:\Dir2"/> > > > > </environment> > > > > </xsl:template> > > > > > > > > On 8/16/06, Nishi Bhonsle <nishiandprafull@xxxxxxxxx> wrote: > > > > > Hi: > > > > > > > > > > I have the following input xml document, I need to write > > > an xsl to > > > > > transform it to the output xml document. > > > > > > > > > > Input xml document - > > > > > > > > > > <?xml version = '1.0' encoding = 'UTF-8'?> <test > xmlns="blabla"> > > > > > <comp id="New"> <process-type id="home" module-id="TESTER" > > > > > status="enabled"> <environment> </environment> > </process-type> > > > > > </comp> </test> > > > > > > > > > > Output xml document - > > > > > > > > > > <?xml version = '1.0' encoding = 'UTF-8'?> <test > xmlns="blabla"> > > > > > <comp id="New"> <process-type id="home" module-id="TESTER" > > > > > status="enabled"> <environment> <variable id="SAROOTDIR" > > > > > value="D:\Dir1"/> <variable id="SADATADIR" value="D:\Dir2"/> > > > > > </environment> </process-type> </comp> </test> > > > > > > > > > > Can someone please help write an xsl to transform the above > > > > > input xml document into the output xml document? > > > > > > > > > > Thanks much! > > > > > > > > -- > > > > Regards, > > > > Mukul Gandhi > > > > > > > > http://gandhimukul.tripod.com
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Need help with XSLT: addi, Nishi Bhonsle | Thread | [xsl] using xsl:character-map in ce, Carlo Liwanag |
Re: [xsl] Status of XSLT 2.0, David Carlisle | Date | Re: [xsl] if statement, Bill French |
Month |