@IT会議室は、ITエンジニアに特化した質問・回答コミュニティ「QA@IT」に生まれ変わりました。ぜひご利用ください。
- PR -

PerlによるXMLの読み込み

1
投稿者投稿内容
まー
会議室デビュー日: 2004/06/30
投稿数: 5
投稿日時: 2004-10-27 00:00
今までは、Java Script + DOMを利用してXMLを読み込み、データを操作しておりました。ServerがLinuxへ変更されたため、Perlでのコーディングへ変更しなければならなくなったのですが、調べてもいろんなParser(XML:arserなど)があるために何を使用して良いのかわかりません。
どなたかPerlを使用したXMLの読み込み(できればXSLもお願いします)のサンプル・コードをご教授いただけないでしょうか?
よろしくお願いいたします。
MMX
ぬし
会議室デビュー日: 2001/10/26
投稿数: 861
投稿日時: 2004-10-27 00:51
CPAN のマニュアルを 歩くと あります
http://cpan.uwinnipeg.ca/htdocs/XML-XSLT/XML/XSLT.html
から出発
SYNOPSIS
に短いサンプル
SEE ALSO
で DOM などに飛びます。
バクシ
会議室デビュー日: 2004/10/06
投稿数: 12
投稿日時: 2004-10-27 22:48
MMXさんが教えて下さったサイトのなかで

http://cpan.uwinnipeg.ca/htdocs/XML-XSLT/XML/XSLT.html#__index__

を見て、XSLTのPerlモジュールがあるのを始めて知りました。使われているのを見たことがなかったので、そのようなモジュールはないと思い込んでいました。

しかし、このページの後半 XML:SLT Commands
の部分をみてびっくり。XSLTの命令(要素)のうち、まったくサポートされていないものや、機能が限定されているものが数多くあります。こんな不完全なXSLTエンジン、使えそうにありません。
XMLの処理にPerlを使う方も少なくないと思います。XSLTをつかった変換をPerlのなかで実行するのに、他のより完全なモジュールはないのでしょうか?
MMX
ぬし
会議室デビュー日: 2001/10/26
投稿数: 861
投稿日時: 2004-10-28 09:39
純Perl ではそんなものですが、メジャーなプロセッサの ラッパーは揃っています。
XML::LibXSLT
とか
Perl/LibXSLT
http://rql.tom.sfc.keio.ac.jp/index.php?Perl%2FLibXSLT

CPANサーチでも 15個出ます
http://cpan.uwinnipeg.ca/search?query=XSLT&mode=dist

[ メッセージ編集済み 編集者: MMX 編集日時 2004-10-28 09:44 ]
まー
会議室デビュー日: 2004/06/30
投稿数: 5
投稿日時: 2004-10-28 14:02
返信ありがとうございました。
Sample Codeより、なんとかXMLの読み込みはできました。
しかしながら、XML::XSLTのモジュールがサーバーに存在しないため、XSLTを使用することができません。XML::DOMモジュールのみでXSLTを使用することは可能なのでしょうか?(または別なモジュールを使用して)
また、XMLで「encoding="Shift_JIS"」を指定すると、「Couldn't open encmap shift_jis.enc」というエラーが出てしまいます。
サーバーの設定を変更する必要がありますでしょうか。(私には権限がないのですが・・)
ご教授よろしくお願いいたします。
MMX
ぬし
会議室デビュー日: 2001/10/26
投稿数: 861
投稿日時: 2004-10-28 14:36
タイトル:XSLTプロセッサのPerlによる実装
http://www.ybi.co.jp/koike/qa2000/qa2355.htm
Xalan あたりは入っていませんかね?
DOM だけでは無理です
======================
XML::Sablotron 1.01
もあるようです
http://www.gingerall.com/charlie/ga/xml/x_sabperl.xml?s=org
XML::STX などいいかも。(高性能XML処理)
----------------------------------------------
XML::Simple
もいいかも、オブジェクトXMLマッピングの重々しさも感じない
http://naoya.dyndns.org/~naoya/mt/archives/000427.html

[ メッセージ編集済み 編集者: MMX 編集日時 2004-10-30 18:38 ]
1

スキルアップ/キャリアアップ(JOB@IT)