〈k〉
〈a〉
〈b〉1.〈/b〉
〈c〉タイトル〈/c〉
〈p〉本文〈/p〉
〈/a〉
〈a〉〜上記繰り返し
〈/k〉
↓
1. タイトル
本文
2. タイトル
本文
どうxsltを書いても
1. タイトル本文(改行が出来ない)
か
1.
タイトル
本文 (全て改行されてしまう)
か、上記2つ書かれるかになってしまいます。
どの xslt を使ってるかわかりませんが、デフォルトは Whitespace(空白。タブや改行も含まれる)を無視する設定になっていると思います。
質問に書いている「改行が出来ない」が、その状態のはず。
その設定のままで、以下のようなスタイルシートを試してみてください。
<?xml version="1.0" encoding="Shift_JIS"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:template match="a"> <xsl:value-of select="b"/><xsl:text> </xsl:text><xsl:value-of select="c"/><xsl:text> </xsl:text><xsl:value-of select="p"/> </xsl:template> </xsl:stylesheet>
<xsl:text> が肝です。
「数字」と「タイトル」の間に空白が入った形を希望しているようなので、それも入れてます。