Причина, по которой комментарии не обрабатываются, заключается в том, что шаблон по умолчанию для комментариев ничего не делает:
<xsl:template match="processing-instruction()|comment()"/>
См. XSLT 1.0 spec "Встроенные правила шаблонов" .
Если вы хотите сделать что-то еще с комментариями, вы можете просто создать свой собственный соответствующий шаблон и вывести их в виде нового XML-комментария, используя xsl:comment
, или создать список HTML:
<xsl:template match="/">
<ul>
<xsl:apply-templates select="//comment()"/>
</ul>
</xsl:template>
<xsl:template match="comment()">
<li>
<xsl:value-of select="."/>
</li>
</xsl:template>