[xsl] commenting Parent element only

Subject: [xsl] commenting Parent element only
From: pankaj.c@xxxxxxxxxxxxxxxxxx
Date: Sat, 18 Sep 2010 22:23:11 +0530
Hello all,

Is it possible to comment parent element only instead of whole 
hierarchical structure.

Input
====

<row>
<entry align="left">s.i.d.<cross-ref 
refid="tbl6fn1"><sup>*</sup></cross-ref></entry>
<entry align="left">Once daily</entry>
</row>
<row>
<entry align="left">b.i.d.</entry>
</row>

Output required
============

<!--<row>-->
<entry align="left">s.i.d.<cross-ref 
refid="tbl6fn1"><sup>*</sup></cross-ref></entry>
<entry align="left">Once daily</entry>
<!--</row>-->
<!--<row>-->
<entry align="left">b.i.d.</entry>
<!--</row>-->

I tried 
=====
<!--  Comment <row> element, which will require later on  -->
    <xsl:template match="row">
        <xsl:comment>
            <xsl:apply-templates select="." mode="comment_element" />
        </xsl:comment>
    </xsl:template>

  <xsl:template match="*" mode="comment_element">
        <xsl:value-of select="'&lt;'"/>
            <xsl:value-of select="name()"/>
        <xsl:text> </xsl:text>
          <xsl:apply-templates select="@*" mode="comment_element" />
        <xsl:value-of select="'&gt;'"/>
</xsl:template>

    <xsl:template match="text()" mode="comment_element">
        <xsl:value-of select="."/>
    </xsl:template>

    <xsl:template match="@*" mode="comment_element">
        <xsl:value-of select="name()"/>
        <xsl:text>="</xsl:text>
        <xsl:value-of select="."/>
        <xsl:text>"</xsl:text>
        <xsl:text>/</xsl:text>
    </xsl:template>

But gives me:
<!--<row >--><!--<row >-->
<entry align="left">s.i.d.<cross-ref 
refid="tbl6fn1"><sup>*</sup></cross-ref></entry>
<entry align="left">Once daily</entry>
<entry align="left">b.i.d.</entry>

Just to add I am processing the child entry element later. 

I just need the parent (row) element info while retransforming back to 
original. Or alternatively is there a better way of getting this done.

TIA,
Pankaj

Current Thread