Subject: Re: [xsl] Extracting data from external file From: Jingjun Long <longjingjun@xxxxxxxxx> Date: Mon, 31 Aug 2009 18:12:59 +0800 |
hi Joga, Try this: <xsl:template match="b"> <xsl:variable name="a" select="substring-before(@n, '_')"/> <xsl:variable name="file" select="document(concat('dir/', $a,'_ext.xml'))"/> <xsl:variable name="v_n" select="@n"/> <found><xsl:value-of select="$file/xxx/x[@a = $v_n]/y"/></found> </xsl:template> Jingjun 2009/8/31 Jingjun Long <longjingjun@xxxxxxxxx>: > By looking into the example data you provided, file_ext.xml is loaded > twice. Your current output is exactly reflect your logic in the XSLT > code. > > There are many ways to get your expected output but what logic are you > going to put there. > > > 2009/8/31 Joga Singh Rawat <jrawat@xxxxxxxxxxxxxx>: >> Hi, >> I want to extract data from external file i.e. file_ext.xml but not getting >> the required OUTPUT. Can anyone correct me about my mistake. >> >> dir/file_ext.xml >> <xxx> >> <x a="file_1"> >> <y>first</y> >> </x> >> <x a="file _2"> >> <y>second</y> >> </x> >> </xxx> >> >> b.xml >> <aaa> >> <b n="file_1"> >> <b n="file_2"> >> </aaa> >> >> XSLT Code >> <xsl:template match="b"> >> <xsl:variable name="a" select="substring-before(@n, '_')"/> >> <xsl:variable name="file" select="document(concat('dir/', $a, >> '_ext.xml'))"/> >> <found><xsl:value-of select="$file/xxx/x[@a = @n]/y"/></found> >> </xsl:template> >> >> OUTPUT >> <found>first second</found> >> <found>first second</found> >> >> Required OUTPUT >> <found>first</found> >> <found>fsecond</found> >> >> Thanks
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Extracting data from exte, Jingjun Long | Thread | RE: [xsl] Extracting data from exte, Joga Singh Rawat |
Re: [xsl] Extracting data from exte, Jingjun Long | Date | RE: [xsl] Extracting data from exte, Joga Singh Rawat |
Month |