2009年10月25日(日)更新 |
■xsl:with-paramでtemplateにデータを渡しましょう
さらら: templateにパラメタを渡す、って?? たけち: 前回、それぞれ一回しか使わないのに、xsl:call-templateを使ってたけど、二ヶ所以上で使うときには、二ヶ所ともまったく同じことをするんじゃなくって、それぞれちょっとだけやることが違うってことがあるよね。 さらら: うんうん。そうね。同じ内容を作るときでも、それぞれのフォントを違うようにしたいとか、ねっ。 たけち: そうそう。そんなときに、xsl:call-templateといっしょに、指定したテンプレート(template)にパラメタを渡して、テンプレートがそのパラメタによって生成する内容を変えたりさせることができるんだ。 さらら: へぇ〜、そうなんだ。すごいわね。 たけち: そのパラメタを渡すのに、xsl:with-paramを使うんだ。いつものようにxsl:with-paramの使い方を図で説明するね。 |
さらら: なんだか難しそうね。。。。xsl:with-paramってxsl:call-templateの中で使われるのね。 たけち: それに、呼ばれる方のtemplateの最初に、xsl:paramでデフォルト値を書くんだよ。 さらら: デフォルト値って、xsl:with-paramでパラメタの指定が無いときに、このtemplateの中で使われる値のことね。 たけち: そうそう。デフォルト値のこと、よく覚えていたね。 さらら: うふふ。。。。(^ ^* |
■xsl:with-paramのサンプルの説明
たけち: じゃあ、今回のサンプルではどんなことをするのか説明するね。今回は、歌の番号のところと歌の読みのところの両方に「万葉集の歌のページ」へのリンクを作ってみようね。 さらら: どんなリンクにするの? たけち: 次の図に、表示したい画面とそれぞれのリンクの内容を載せておくね。 |
さらら: こんな風にリンクを作るのね。あっ、それで、それぞれのリンクを作るためにtemplateにcontentsという名前(name)のパラメタで渡すのね。 たけち: そうなんだ。だいたい分かったところで、XSLサンプルがどうなっているかを図で説明するね。 |
たけち: どう? だいたい分かるだろ?! さらら: えぇ、分かるわ。 たけち: じゃあ、今回のサンプルのXMLテキストとのXSLスタイルシートを次に載せるね。XMLテキストは、前回と構成は同じだけど、ちょっとだけ歌を入れ替えてみたからね。 |
■xsl:with-paramのサンプルXMLテキストとXSLスタイルシート
xsl:with-param サンプルXMLテキスト |
---|
<?xml version="1.0" encoding="Shift_JIS"?> |
xsl:with-paramサンプル用xslスタイルシート |
---|
<?xml version="1.0" encoding="Shift_JIS"?> |
たけち: じゃあ、このXMLテキストを"with-param.xml"というファイル、XSLスタイルシートを"with-param.xsl"というファイルにして、実際にどうなるか見てみようね。次のテキストをクリックしてみて。 |
さらら: やっとこれでxsl:call-templateの使い方が分かったわ。XSLって本当にいろいろなことができるのね。。。。。 たけち: うん。まだまだ説明したりないこともあるけれど、基本的なことは説明できたと思うよ。 さらら: じゃぁ、XSLサンプルの説明は終わりなの? たけち: うん。必要と思われることはこれからもやっていこうと思うけれどね。 さらら: は〜い、ありがと。(^ ^* →次は、xsl:outputです。・・・ (^ ^; |