現在、このxmlの処理で問題が発生しています
<detaileddescription>
<para>
ParamText1
<itemizedlist>
<listitem>
<para>Test TextTest TextTest TextTest TextTest Text</para>
</listitem>
<listitem>
<para>Test TextTest TextTest TextTest Text</para>
</listitem>
</itemizedlist>
ParamText2
</para>
</detaileddescription>
次のxsltファイルを使用します。
<!-- match each para tag and calls the child nodes -->
<xsl:template match="para">
<p class="para">
<xsl:apply-templates select="@* | node()" />
</p>
</xsl:template>
<xsl:template match="itemizedlist">
<ul>
<xsl:apply-templates select="*"/>
</ul>
</xsl:template>
<xsl:template match="listitem/para">
<li>
<xsl:apply-templates select="@* | node()"/>
</li>
</xsl:template>
<xsl:template match="text()">
<xsl:copy />
</xsl:template>
次のような結果が期待できます
<p class="param">
ParamText1
<ul>
<li>Test TextTest TextTest TextTest TextTest Text</li>
<li>Test TextTest TextTest TextTest Text</li>
</ul>
ParamText2
</p>
しかし、xsltはコンテンツを変換します
<p class="param">
ParamText1
</p>
<ul>
<li>Test TextTest TextTest TextTest TextTest Text</li>
<li>Test TextTest TextTest TextTest Text</li>
</ul>
ParamText2
<p>
タグの前にタグが閉じられている理由がわかりません<ul>
。