I have an XML of the form
<grandparent>
<top_element>
data
<special_element>special data</special_element>
</top_element>
<second_element>
<some_element>some data</some_element>
<special_element>other special data </special_element>
<some_other_element>some other data</some_other_element>
<second_element>
</grandparent>
I'm trying to get html output of the form
<div>
some data
<div>other special data </div>
some other data
</div>
so far the best I can get is
<div>
some data
other special data
some other data
<div>other special data</div>
</div>
by using
<xsl:template match="second_element">
<div><xsl:value-of select="."/>
<xsl:apply-templates select=".//special_element"/>
</div>
</xsl:template>
<xsl:template match="//second_element//special_element">
<div >
<xsl:value-of select="."/></div>
</xsl:template>