XMLで以下のような結果になるためにどのようなXSLTにすれば良いか教えて下さい。

〈k〉
〈a〉
〈b〉1.〈/b〉
〈c〉タイトル〈/c〉
〈p〉本文〈/p〉
〈/a〉
〈a〉〜上記繰り返し
〈/k〉

1. タイトル
本文
2. タイトル
本文


どうxsltを書いても
1. タイトル本文(改行が出来ない)

1.
タイトル
本文 (全て改行されてしまう)
か、上記2つ書かれるかになってしまいます。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2015/04/30 02:12:00

ベストアンサー

id:a-kuma3 No.1

回答回数4973ベストアンサー獲得回数2154

どの 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> が肝です。
「数字」と「タイトル」の間に空白が入った形を希望しているようなので、それも入れてます。

id:b-stat

ありがとうございます。
できました。

2015/04/30 02:12:40

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません