image

  • フォト Amazonギフト券
    ※この時計の時刻は、閲覧しているパソコンのものであり、必ずしも正確な時間とは限りません

検索

最近のトラックバック

無料ブログはココログ

« ピックアップ: 人の目を引くタイトル、DHTML カラーピッカー, etc... | トップページ | xvcd でループ処理 »

2006-11-23

xvcd で九九の表をつくる

Loop
xslt では繰り返しをつくるのが結構 面倒。
以下の記事では、xslt での繰り返し処理について触れられている。

- http://www-06.ibm.com/jp/developerworks/xml/030110/j_x-xslrecur.html
  >> dW : XML : XSLで再帰処理を効果的に使用する

- http://www.yuragi.jp/gsxslt/p001/p001.asp
  >> 再帰処理をしよう - 階乗計算 -

ともかく xvcd で九九の表をつくってみた。(再帰処理をつかった)
  http://homepage2.nifty.com/youichi_kato/src.html
  >> xfy で 九九の表をつくる (繰り返し処理の例) (2006-11-23)
あー、やはり面倒!

これをもっと簡単にする方法は無いものか?
1. 外部コマンドを呼び出して表データを XML で生成し、それを xfy で読み込んで表示する。
2. xi における <xi:for-each select="$Util.counter(1,5)" item="i"> のような機能を実現して、
   それを利用する。
  参照:http://www3.vis.ne.jp/~asaki/java/xi/xi_tips.html#for3
          >> 逆引き Xi: 指定した回数繰り返す
3. XPath2.0 での  <xsl:for-each select="(1 to 5)"> のような機能を実現して、
   それを利用する。
    参照:http://www.mothprog.com/prog/xslt2/xslt7.html
          >> XSLT2.0の感覚

xfy が Xpath2.0 準拠になるのを待つか?

« ピックアップ: 人の目を引くタイトル、DHTML カラーピッカー, etc... | トップページ | xvcd でループ処理 »

コメント

4. 自分で、XPath拡張関数を実装する。
なんてどうでしょうか。

私もこういうのを作って見ました。
http://rikima.dip.jp:8081/rikima/xfy/efunction-range-set95a26570/

みんなで、いろいろ作るのは楽しいでね。

rikima さん、
素晴らしい!
現状でも簡単に実現できる方法があったのですね。
for-each が処理できる要素自体を xpath関数 で生成してしまえばよかったんですね。
すこし工夫するだけで任意の数字列の要素を生成することでおもしろい繰り返し処理ができそうです。
(等差数列だけでなく、等比数列、素数列、フィボナッチ数列、n! 数列とか...)

私は、for-each で要素をたどる部分を改造する方法がないかなぁと思っています。
改造 for-each では 常に対象要素は移動していかないようにすることで無限ループを作り出すのです。
そして ループ中で何らかの条件を変更し、何らかの条件でループ脱出させるようにするのです。
(そういえば xvcd のサンプルには時計の例がありますが、あの無限ループはどうやってつくっているんだろう。)
"無限ループ + ループ中での条件変化 + 条件によるループ脱出"
の仕組みをつくれないかを考えてみたいです。(これならループ実行に伴う要素生成のコストは少なくて済むはず)

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/184434/12793923

この記事へのトラックバック一覧です: xvcd で九九の表をつくる:

« ピックアップ: 人の目を引くタイトル、DHTML カラーピッカー, etc... | トップページ | xvcd でループ処理 »

mokuji

2013年12月
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        

google

  • twitter
  • __
  • _
    Googleボットチェッカー

合わせて読む

  • 合わせて読む
    フィードメーター - katoy: cocolog あわせて読みたい

リンク