- 締切済み
XML/XSLでテンプレートの適用がうまくいかない
同じツリーの深さで異なる要素名のノードがあるXMLだと期待通りにテンプレートが適用できない という問題に付き当たっています。 例えば / +------+ poem poem のような構成だとmatch=poem、value-of select="text"などで各poemの歌詞を表示させることが できます。 一方、以下の構成で同じ事をやろうとすると各poemの歌詞に加えてyearのnumのValueまで 列挙されてしまいます。poemの中身だけ出すにはどうすればよいでしょうか? 以下に例を書きます。 / +--------------+ list year +------+ +----+ poem poem Num Num 例えば以下のURLなどを参照してやっております。 http://www6.airnet.ne.jp/manyo/xml/xslt/step15.html XSLはこんな感じです。 <xsl:template match="/"> <xsl:apply-templates /> </xsl:template> <xsl:template match="poem"> <tr> <td><xsl:value-of select="poet" /></td> <td><xsl:value-of select="yomi" /></td> </tr> <br /> </xsl:template> 手持ちのXMLを変換したく、その勉強のため上記のような構成のXMLを扱う方法を 知りたいと思っています。 よろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- dscripty
- ベストアンサー率51% (166/325)
> 以下に例を書きます。 Tree 表記の代わりに、実際の XML を書いてみるといいよ。 あと、どのように変換されて欲しいのか分かるように、期待する変換後の結果も必要かな?