xsl-list
[Top] [All Lists]

[xsl] How many levels of nodes can we nest in a xsl:template?

2007-09-09 12:47:25
Hi, 
    
    This is my first time trying to put in several layers of nodes within a 
template, and the XML is found below:


      <panelGroup>
                <panel n="1" characters="margo damian ike">
                          <balloon who="ike" type="speech">
                        <p>My <emph rend="bold">every</emph> instinct led me to 
the <emph
                                rend="bold">right</emph> passages, Doctor 
Damian! </p>
                        <p> I'll record it on film for you, right now!</p>
                    </balloon>
                            </panel> ........(more data)
                     </panelGroup>


    <xsl:template match="panelGroup">

        <table id="main" align="center" valign="middle">
            <tr>
                <td>
                    <xsl:apply-templates select="figure"/>
                </td>
                <td>
                    <xsl:apply-templates select="panel"/>
                </td>
            </tr>
        </table>
    </xsl:template>

 <xsl:template match="panel">
                  <xsl:apply-templates/>      
            </xsl:template>
<xsl:template match="balloon">
        <p>
            <b>
                <xsl:value-of select="./@who"/>
            </b>
            <xsl:choose>
                <xsl:when test="./@type ='speech' "> "<xsl:value-of 
select="."/>" </xsl:when>
                <xsl:when test="./@type = 'thought' ">
                    <i>
                        <xsl:value-of select="."/>
                    </i>
                </xsl:when>
            </xsl:choose>
            <xsl:apply-templates select="p"/>
                         </p>
    </xsl:template>

 <xsl:template match="p">
<xsl:apply-templates/>
            </xsl:template>

However, when I transform the data, the data appears twice. The first line that 
appears is the line that does not have any other formatting(bold or italics), 
and then the second line would show the proper format. The problem is that when 
I took out the <xsl:apply-templates/> line from the balloon template, none of 
the bold print would show, although text would be only appeared once. Is this 
because I have nested too many levels of nodes within my "main template"? If 
so, how many templates am I allowed to have to produce proper results?

A Newbie to xsl:templates nesting

Alice Wei
MIS 2008
School of Library and Information Science
 



--~------------------------------------------------------------------
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>
--~--

<Prev in Thread] Current Thread [Next in Thread>