Re: [xsl] Processing only certain nodes in a document fragment

Subject: Re: [xsl] Processing only certain nodes in a document fragment
From: "Rui Alberto L." Gonçalves <rui-l-goncalves@xxxxxxxxxxxxx>
Date: 18 Feb 2004 19:28:37 +0000
This is simply a suggestion:

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet xmlns:xsl="";
<xsl:template match="foreach">
  <xsl:for-each select="./in/item">
    <xsl:call-template name="output">
      <xsl:with-param name="cdata" select="text()"/>
      <xsl:with-param name="do-sect" select="/foreach/do/*"/>
<xsl:template name="output">
  <xsl:param name="cdata"/>
  <xsl:param name="do-sect"/>
  <xsl:for-each select="$do-sect">
      <xsl:when test="name() ='var'">
        <xsl:value-of select="$cdata"/>
        <xsl:element name="{name()}">
          <xsl:copy-of select="@*"/>
          <xsl:call-template name="output">
            <xsl:with-param name="do-sect" select="./*" />
            <xsl:with-param name="cdata" select="$cdata"/>

Hope this helps..


On Wed, 2004-02-18 at 21:26, Glenn MacGregor wrote:
> Hi All,
> Thanks for all the help so far! I am having a problem with the following 
> document fragment:
> <foreach>
> <in>
> <item>test1</item>
> <item>test2</item>
> <item>test3</item>
> <item>test4</item>
> <item>test5</item>
> </in>
> <do>
> <tr><td><var/></td><td><var/></td></tr>
> <tr><td><var/> Test</td><td><var/> Test</td></tr>
> </do>
> </foreach>
> I need a template which will loop through all the <item> tags and replace the 
> "<var/>" tag in the <do> section with CDATA of the current item tag echoing all 
> the rest of the do tag to the result (without the <do> tag).
> Is this possible? If there is a better way to handle this please let me know I 
> have complete control the document, I can put any structure or XML in there.
>   Thanks 
> Glenn MacGregor
> HighStreet Networks
> -------------------------------------------------
> This mail sent through IMP:
>  XSL-List info and archive:
Rui Alberto L. Gonçalves <rui-l-goncalves@xxxxxxxxxxxxx>
PT Inovação

 XSL-List info and archive:

Current Thread