[Python-ml-jp 864] Re: XSLT

Eiji Katagiri katagiri @ teikokupr.co.jp
2001年 11月 21日 (水) 10:41:26 JST


片桐です。


On Mon, 19 Nov 2001 16:08:42 +0900
URAGO Keisuke <bravo @ diana.dti.ne.jp> wrote:

(snip)
> 
> XSLTなら、4suite http://www.4suite.org/> (たぶん)メジャーだと思います。
> 
> # 日本だとpython自体があまり目に触れないところにあるので、
> # Zope以外となるとなかなか名前が出てくるのがなさそうだったり(^^;
> 
ダウンロードして使ってみました。(XSLTだけですが)
簡単なサンプルを動かしただけですが、問題ありませんでした。
pyexpat.c には石本さん作成の日本語パッチを当ててあって、XMLデータは
<? xml version="1.0" encoding="euc-jp" ?>
として、EUCデータが使えてます。

XSLTスタイルシートの方は
<xsl:output method="html" encoding="japanese.euc-jp"/>
とすれば出力データがEUCになります。codecsモジュールは、梶山さんの
JapaneseCodecs version 1.4.1 を使用しています。

ちょっとソースを読んでみました(Pythonだと読んでみようって気に
なれます)。Xslt/__init__.py のclass OutputParameters: (320行目)に

    319         if default==0 or (default==1 and attr not in self._attrchanged):
    320             if attr == 'encoding' and value == 'euc-jp':    # 01-11-21
    321                 self.__dict__[attr] = 'japanese.euc-jp'
    322             else:
    323                 self.__dict__[attr]=value

320〜322 の3行を追加してみました。
XSLTスタイルシートの方も
<xsl:output method="html" encoding="euc-jp"/>
の指定もOKになりました。他にも修正が必要かも知れません。

4Suite はXSLT以外にもたくさんの機能があるので、時間をかけて
調べてみたいと思います。

使用環境: Vine Linux 2.1.5 + Python-2.1.1

浦郷さん、情報ありがとうございました。

====================================================================
 片桐 栄司
 帝国ピストンリング(株) システム開発室
 E-mail: katagiri @ teikokupr.co.jp
 TEL. 0266-23-2811 内線 470	FAX. 0266-23-0644
====================================================================





Python-ml-jp メーリングリストの案内