2010-09-01から1ヶ月間の記事一覧

彼岸花

稲刈り後の土手にニョキニョキと生えていたので近寄ってみたら彼岸花でした.父がモグラ除けに植えたものですが毎年稲刈りの時期に花を咲かせます.以前はモグラの穴で上の田の水が下段の畑に漏れ出してしまって大変でしたが効果は抜群のようです. 彼岸花と…

XSLT 2.0で便利になった機能(28) xsl:next-matchを使う

xsl:next-matchについて紹介します.xs:next-matchは、複数のマッチングするテンプレートがあった場合に、最終的に選択されたテンプレート内から、次の優先順位でマッチングするテンプレートを階層的に呼び出せる機能です. 例えばDITA→XSL-FOでxsl:next-mat…

久しぶりに...

連休で「亭主元気で留守がいい.バイクでも乗ってきたら!」と女房が言うのでお言葉にあやかって久しぶりにTLMで西の里山に行ってきました.里山と言っても、権現山と言いれっきとした中央アルプス西駒ケ岳の登山道があります.前回はTYS125Fで途中で引き返…

XSLT 2.0で便利になった機能(27) キャラクタマップ

今回はxsl:caharacter-map、xsl:output-characterについて紹介したいと思います. この機能は主に「見る」文書を出力する際に使うものだと思います.例えば従来HTML出力では、HTMLで定義されている実体参照を書き込もうと思っても、disable-output-escaping…

萩の花

萩はやさしい秋の花です.私の大好きなNHKのラジオビタミンを聞いていたら、ノンフィクション作家の千葉望さんが、「万葉集で一番詠まれた花です」と言っておられました.調べてみたら確かにそうで、萩はダントツの一位です.(萩、梅、松の順) http://www2…

XSLT 2.0で便利になった機能(26) ソーティング

xsl:sortはXSLT1.0と比べてパラメータにcollationとstableが追加されていますが基本は変わっていません.しかし、selectで指定する式の自由度がXSLT2.0になって高くなっています.またXSLT1.0ではノードのソートしかできませんでしたが、XSLT2.0では任意のse…

稲刈り

今日、区の協業組合の方が稲刈りに来てくれました.今年は一区画しか稲を植えていなかったので、およそ30分もかからないうちにあっという間に刈り取りは終了しました.昔は近所の方にもお願いして、稲刈り鎌で一本づつ刈り取って束ね、ハゾと呼ばれる竹を渡…

閑話休題: 平坦なXMLを構造化する

前回の応用で、xsl:for-each-groupのグルーピングの属性、group-starting-withを使って、平坦なXMLの構造化をやってみました. あまり現実味がないと面白くないので、今回はソース文書としてWord2003の出力するWordMLを使います.Word2007、2010でもWord2003…

XSLT 2.0で便利になった機能(25) グルーピング(その2)

前回の残りで、xsl:for-each-groupのグルーピングの属性、group-starting-withとgroup-ending-withを紹介したいと思います. group-by, group-adjacentとgroup-starting-withとgroup-ending-withには決定的な違いがあります.前者はXPath式によりグルーピン…

XSLT 2.0で便利になった機能(24) グルーピング

XSLT2.0で導入された看板機能にxsl:for-each-groupによるグルーピングがあります.今回はこれを紹介します. まず最もポピュラーな例です.次のような入力データを出荷日(@date)でグルーピングして、さらに製品id(id)でソートして出力します. <shipping-data> <shipping product="鉛筆" id="p-001" date="2010-08-25" count="10"/> </shipping></shipping-data>

百日紅(その2)

九月になったのに今年は本当に暑い日が続きます.さて先月の末の頃になってようやく我が家の百日紅も花をつけました.我が家のは白と紅の二種類です.種類が他にくらべて古いものとのことで、咲く時期がずれるようです.年が移り変わっても、時期がくれば木…