Nishi,
Not sure what you are after. It appears to me that this is the first
time you are trying to create an XSLT file and run it. There's nothing
wrong with that, but perhaps it is better to find some introductory
material to get you started. What you have typed below has nothing to do
with XSLT (no wonder it gives an error), apart perhaps from the
"variable" element, though it lack the xslt namespace. This gives the
feeling that you may need some basic training in XML too (see below). In
XML Spy you can click "New" and select "xslt" from the list of options.
Click the bottom option in the next screen (from scratch), or try the
other more interactive ways of achieving your goal.
If you don't want to do it by hand, you can try Altova Map Force. Other
tools around have visual XSLT editing tools as well.
A good primer for XSLT is http://www.w3schools.com/xsl and for XML
http://www.w3schools.com/xml. Other pointers can be found from here:
http://en.wikipedia.org/wiki/Xslt and http://en.wikipedia.org/wiki/Xml
respectively and some good introduction books are available through
various publishers. XSLT is not trivial and requires a bit of trial and
error in the beginning, but once you are up to some speed, it rocks. One
thing I can advice you to read is XSLT Cookbook 2nd Ed. from O'Reilly
and the execllent XSLT/XPath Programmer's references from Wrox, by
Michael Kay.
Cheers,
Abel Braaksma
http://www.nuntia.nl
Nishi Bhonsle wrote:
Hi:
Trying to load the following xsl in XMLSpy gives document mal-formed
error.
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(_dot_)mukul(_at_)gmail(_dot_)com> 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(_at_)gmail(_dot_)com> 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
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--