[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: Need help with XSLT: adding new node btw existing
> 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
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|