続:あまぞ(さ)んのベストセラー一覧を取ってくるXSLTXML

| コメント(0) | トラックバック(0)

再帰しないための解決策を思いついて、やってみたらうまくできたので。
XSLT標準の手法だけで、ループを実現させちゃう技だ。
#昔やった覚えがあるけど、忘れてた・・・

通常、XSLT内で、変数としてXMLデータを定義しても、ノードセットとしてみなされない場合、XMLデータとしては使えない。
ノードセット化するのは、msxsl:node-setでキャストしてやればいいんだけど、msxslを解釈するやつ=MSXMLでしか処理できない恐れがある。

でも、XSLTXMLの場合、自身(XML)を自身(XSLT)で処理するのだから、自身(XSLT)に書かれたXMLデータには直接(XML)アクセスできるはずだ。

っちゅうわけでできたのはこちら。
#ちょっと乱暴だけど。

再帰もいいけど、ループもね。
再帰するとスタック消費するんだよね。
回数不明な再帰はスタックオーバーフローを引き起こす恐れが恐怖。

(追記)
乱暴さを緩和するには、//path を //xsl:variable[@name='data']/path に変えるとよい。
#変数名を指定できるため、複数の変数を扱えるようになる。

トラックバック(0)

トラックバックURL: http://blog.fne.jp/mt/mt-tb.cgi/327

コメントしちゃいなよ

    

サイトカウンタ

Total: 202,683 Hits, (Recent24Hours: 16 Hits)
~ Since 2010/01 ~

埋め込みツイッター

取得失敗;;
Now: 2017/09/24 13:51:29 JST

このブログ記事について

このページは、ふぅみんが2010年10月16日 04:14に書いたブログ記事です。

ひとつ前のブログ記事は「あまぞ(さ)んのベストセラー一覧を取ってくるXSLTXML」です。

次のブログ記事は「登録中」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

2017年8月

 日   月   火   水   木   金   土 
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

埋め込みQRコード