|
Subject: RE: [xsl] Get value from update.xml and stored in source.xml(update source.xml) From: "Shailesh" <shailesh@xxxxxxxxxxxx> Date: Wed, 8 Sep 2004 16:35:52 +0530 |
Hi,
Using msxml 4.0
The Output is:
<?xml version="1.0" encoding="utf-16"?>
<test>
<source.xml>
<test>
<chapter>
<test1 id="0000001">
<test2>
</test2>
</test1>
<test1 id="0000002">
<test2>
</test2>
</test1>
</chapter>
</test>
</source.xml>
<source.xml>
</source.xml>
<output>
<test>
<chapter>
<test1 id="0000001">
<!--Looking up test1 (id = '0000001')-->
<!--With raw xpath:-->
<!--With a key:-->
</test1>
<test1 id="0000002">
<!--Looking up test1 (id = '0000002')-->
<!--With raw xpath:-->
<!--With a key:-->
</test1>
</chapter>
</test>
</output>
-----Original Message-----
From: Joris Gillis [mailto:roac@xxxxxxxxxx]
Sent: Thursday, September 08, 2005 3:40 PM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: Re: [xsl] Get value from update.xml and stored in source.xml(update
source.xml)
On Wed, 08 Sep 2004 11:40:56 +0200, Shailesh <> wrote:
> I have used posted xml and xslt.
> I have written a small code in VB.NET which takes input as "xml" file
> and for transformation "xslt" and does the transformation which will
> output an xml file.
What version of msxml do you use?
Please run this diagnosing stylesheet and post the output.
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:output method="xml" indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:output method="xml" indent="yes"/>
<xsl:variable name="update" select="document('update.xml')"/> <xsl:key
name="id" match="*" use="@id"/>
<xsl:template match="/">
<test>
<source.xml>
<xsl:copy-of select="/"/>
</source.xml>
<source.xml>
<xsl:copy-of select="$update"/>
</source.xml>
<output>
<xsl:apply-templates/>
</output>
</test>
</xsl:template>
<xsl:template match="*[@id]">
<xsl:variable name="id" select="@id"/>
<xsl:copy>
<xsl:apply-templates select="@*" />
<xsl:comment>Looking up <xsl:value-of
select="local-name()"/> (id = '<xsl:value-of select="@id"/>')</xsl:comment>
<xsl:comment>With raw xpath:</xsl:comment>
<xsl:copy-of select="$update//*[@id=$id]/*"/>
<xsl:comment>With a key:</xsl:comment>
<xsl:for-each select="$update">
<xsl:copy-of select="key('id',$id)/*"/>
</xsl:for-each>
</xsl:copy>
</xsl:template>
<xsl:template match="node()|@*">
<xsl:copy>
<xsl:apply-templates select="node()|@*" />
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
--
"Em o_da |ti oud]m o_da" - Syjqatgr
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] Get value from update.xml, Joris Gillis | Thread | Re: [xsl] Get value from update.xml, David Carlisle |
| RE: [xsl] Get value from update.xml, Shailesh | Date | RE: [xsl] Get value from update.xml, Shailesh |
| Month |