• 締切済み

XMLパーサーであるXerces-P (ざーしず)と XSLT プロセッサである XT について

XSLTプロセッサであるXTとXMLパーサーであるXerces-Pを使用してXMLからHTMLを生成しようと考えているのですが、XMLパーサーであるXerces-Pについて教えて下さい。 Q1.Xerces-P+XTの場合はJavaは必要ないのでしょうか? Q2.Xerces-Pのインストール方法やTXからの使用方法が詳細が記載されているお薦めのURL 宜しく御願いします。

  • XML
  • 回答数2
  • ありがとう数23

みんなの回答

  • fatback
  • ベストアンサー率84% (11/13)
回答No.2

■Xerces+XT ■Perlだけインストールされているマシン のどちらかをあきらめる、という意味ではa-kumaさんと同意見ですが 「あえて後者(Perl環境)」を優先するのであればXTをあきらめて Xerces + Xalanもありかな、と。 ■CPAN http://search.cpan.org/search?mode=module&query=xerces にPerl用のモジュールがあります。 #私自身はPerlよりJavaだと思いますが…… --- 御存じかもしれませんが http://www.janit.com/netbranch/Perl/XMLPerl/XMLPerl20001011.html も御覧になって下さい。 CPANの解説もちょこっと出てます。

okwebenomoto
質問者

お礼

有難う御座います。 参考にしてみます。

  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.1

Xerces は、Java だけではなく Perl のモジュールや C++ での実装もある ようですが、肝心の XT が Java の実装なので > Q1.Xerces-P+XTの場合はJavaは必要ないのでしょうか? については No ですね。 > Q2.Xerces-Pのインストール方法やTXからの使用方法が詳細が記載されているお薦めのURL 「お薦め」ってことにはならないのですが、調べる過程で見たページを いくつか。 XT を使うのが前提であれば、Java が必要になるので、参考URLのページが 良いかも(詳細ではないですね)。でも、Java だったら、ファイルを展開 して CLASSPATH を通すだけですから、詳細も何も無いかも。 ↓のページは、C++ 版の Xerces です。もし、パーサを使ったプログラムを C++ で書くことがあれば、参考になるかもしれません。   http://www.kcat.zaq.ne.jp/takao/documents/bcb/10_xerces-c.html # 私も、そろそろ XML にはまりそうなんで、いろいろな資料をつまんでいる # ところですので、この手の質問はためになります :-)

参考URL:
http://www2.wbs.ne.jp/~skaga/wpf/xmllesson/xmllesson02.htm
okwebenomoto
質問者

お礼

Javaが必要なんですね。 PerlだけでインストールされているマシンでXerces-P+XTでXML->HTMLに変換出来ればいいなと思ったのですが。 URLを参考にしてみます。 御回答有難う御座いました。

関連するQ&A

  • JavaからXMLプロセッサを使うとは?

    JavaでXMLを処理する必要に駆られまして、一念発起して勉強しています。 XMLを処理するためには、JavaのAPIがあってそれを利用するというのはokで、処理方法にはDOM・SAX・XSLTといったものがあるというのもわかりました。 ただ、DOMやSAXが、Javaプログラムからデータを読む手助けをするためのモノというのはわかるのですが、XSLTはただの変換とどう違うのでしょうか? 本を読む限り、XSLの規則にしたがって変換するもの。となっていて、読み込ませる→変換結果が出てくる、で、なんだかHTMLの生成くらいにしか使えないような印象なのですが、Javaとタッグを組んでデータを処理させたい場合、どんな使われ方をするのでしょうか。 DOMやSAXでも良いじゃんと言われそうなのですが、HTMLも同時に扱う必要があるため、ぜひ習得したいのです。 ですが、市販のJava本はほとんどXMLパーサ関係ばかりで・・・。また、何かいい参考書もあったら教えていただきたいと思います。

    • ベストアンサー
    • Java
  • XMLパーサの種類について混乱してます

    XSLTをいじる必要に駆られて、現在Java1.4+JAXP1.1を利用しています。 いままで、javax.xml.transformをimportしてメソッドを実行するだけで、「変換系に何を使っているのか」については全く気にしていなかったのですが、その実体は何なのでしょうか? (XTとかXalanとか、単体の変換系がありますよね・・・?) また、DOMパーサ、SAXパーサもJAXPで使えますが、各々のパーサや変換系を集めてパッケージにしたものがJAXPなんでしょうか。 さらに、勉強中にXMLパーサという単語が出てきて混乱しています。XMLパーサは、DOM・SAX・XSLT等とは違うのでしょうか? (XMLパーサと名乗っているXercesは何に使うのでしょうか・・・) DTDとの関連も含めて解説して頂けたら嬉しいです。

    • ベストアンサー
    • Java
  • XML→PDF出力

    WebページでXMLで表示している内容をPDFとして出力する方法を 教えて下さい。 XML→XSLT→XSL Formatting Object→XSL Formatter→表示 のようにするみたいですが、 Apacheのxerces-j、xalan-j、FOPなどを 用いて実際にはどのようなソース、手順で作成するのか知りたいです。 よろしくお願いします。

    • ベストアンサー
    • XML
  • XML.XSLT

    自分で解決ができないので、少し聞かせてください。 質問は、XMLを利用して、XSLTの出力です。 まずは、サンプルでの実装を確認しようと思いまして、 http://www.hellohiro.com/xslt.htm のサイト利用させていただいております。 それで、サイトの説明通り、 http://java.sun.com/xml/downloads/javaxmlpack.html から、java_xml_pack-summer02_01.zipをダウンロードして、xalan.jar、jaxp-api.jar、dom.jar、sax.jar、xercesImpl.jarを配置しました。配置内容は、まず、 C:\jdk1.3\jre\lib\ext に配置しました。そして、サーバアプリは、JRun3.0を使用してますので、C:\Program Files\Allaire\JRun\lib\ext に配置しました。余談になると思うのですが、toolで、forte for java2.0を使っているので、C:\forte4j\lib\extにも配置しました。そして、上記サイトの下方の「サーブレットを利用しての表示」のコードをコンパイルは成功したのですが、ブラウザからの呼び出しでは、真っ白な表示になってしまいます。 自分では、CLASSPATHに問題があるのでは?と思い、いろいろ試したのですがダメです。ちなみに、autoexec.batには、 SET PATH=c:\jdk1.3\bin;%PATH% SET CLASSPATH=.;C:\jdk1.3\jre\lib\ext\xalan.jar;C:\jdk1.3\jre\lib\ext\jaxp-api.jar;C:\jdk1.3\jre\lib\ext\sax.jar;C:\jdk1.3\jre\lib\ext\domjar としています。 どこの設定が間違っているのか、助言をください。 よろしくお願いします。

    • ベストアンサー
    • Java
  • XML → HTML の確認方法

    閲覧ありがとうございます。 まったくの初心者で、かなり初歩的なことだと思うのですが質問させていただきます。 XML文書についてなんですが、Web上でHTMLとして確認したいのですが、それができなくて困っています。泣 XMLの知識がまったくなかったので、色々調べてみたのですが、結果 XML + XSLスタイルシート → HTMLに変換されてWeb上でみれる・・・ということが分かりました。 また、その変換に processorが必要・・・ということも分かりました。 パソコン内にXSLスタイルシートを発見し、HTMLに変換するのに、Easy XSLT processortというのもダウンロードしてみたのですが、使いたかがよくわからず、使えずにいます・・・泣。 また、XML文書につきましては、あるツールを使って簡単に作成しているのでXML文書についての知識は本当にありません。XSLスタイルシートももともと入っていたものなのでよくわかりません。 XML文書もXSLスタイルシートもあるので、このEasy XSLT processorがうまく使えればWeb上でうまく表示されると思うのですが、どのようにすればいいのでしょうか(><)? XMLの部分にXML文書のファイルを、XSLの部分にXSLスタイルシートのファイルを選択しているのですが、毎回「オートフォーメーションサーバーはオブジェクトを作成できません」「undifindはNullまたはオブジェクトではありません」と言われて、終了してしまいます。 本当に初歩的なことでごめんなさい。 長文を読んで下り、ありがとうございます。ご回答お待ちしております。 (補足) 今までWindowsXPを使用しておりまして、作成したXML文書をクリックするだけでWeb上で文書が表示され、確認することができてたのですが、最近Windows7にかわってから、作成したXML文書をクリックしてもWeb上でうまく表示されなくなってしまいました(><)。 見られなくなった、というよりは、今まで表のように見れていたものが、ずらずら~とした単なる文字の羅列になってしまいました。泣 もしprocessorうんぬんの問題ではない場合も、ご指摘いただけると幸いです。

    • 締切済み
    • XML
  • XML→HTMLに変換したい

    XMLで作成したデータをHTMLに変換するXSLTを作成しました。 IE6でXMLファイルをクリックすると、予定通りの表示ができるのですが、リンクをクリックした後、WINDOWS XPのツールバーにある戻るボタンを押すと、リンク元のページの一番先頭の行に戻ってしまいます。 初めからHTMLで作成すると、このようなことはないので、実際にどのようにHTMLに変換されているのかを確認しようと思うのですが、IE6で表示された画面からソースを見ても、XMLファイルの内容しか見ることができません。 変換ソフトとして、次のソフトをインストールしましたが、どうしてもうまくいきません。 (1) MSXSL.EXEをインストール →MSXML3やMSXML4をインストールしたが、パソコンの中がどうなったのかわからない。MSXSLをダウンロードするサイト("http://msdn.microsoft.com/404/default.aspx")には、MSXSL.EXEが見つからない。 (2) XT →ex.exeを実行すると、マイクロソフトJVMが見つからないとエラー表示される (3) Xalanをインストール →JAVAの知識がないため、インストールの途中で挫折 たいした努力もせずに質問をするわけで申し訳ないのですが、手っ取り早くHTMLを確認する方法はないのでしょうか。

    • ベストアンサー
    • XML
  • XSLT で XML を変換すると日本語のファイル名がエンコードされてしまう。

    XMLで img000_お地蔵さん.jpg というファイル名を定義してあり、XSLT で HTML にそのファイル名を出力すると img000_%E3%81%8A%E5%9C%B0%E8%94%B5%E3%81%95%E3%82%93.jpg というようにエンコードされてしまいファイルを参照できなくなってしまいます。 対処方法の分かる方、おりましたらご回答ください。 宜しくお願いします。

    • 締切済み
    • XML
  • Xercesを使ったjavaでのXML解析

    DOMを使ってXML文書を解析するJavaのソースコードで、DOMパーサは、クラス org.apache.xerces.parsers.DOMParserで参照している下記のプログラムで、 [Fatal Error] :17:109: The entity name must immediately follow the '&' in the entity reference. org.xml.sax.SAXParseException; lineNumber: 17; columnNumber: 109; The entity name must immediately follow the '&' in the entity reference. のエラーが出てしまって、解決策が分かりかねています。Javaのネットワークプログラミングに詳しい方、御教示願えればと思います。 package nikkei; import java.io.ByteArrayInputStream; import org.apache.xerces.parsers.DOMParser; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.NodeList; import org.xml.sax.InputSource; public class TwitterSearch { public static void main(String[] args) throws Exception { TwitterSearch search = new TwitterSearch(); search.search("日経ソフトウエア"); } public void search(String keyword) throws Exception { SearchAPIClient client = new SearchAPIClient(); String xml = client.execute(keyword); parse(xml); } private void parse(String xml) throws Exception { DOMParser parser = new DOMParser(); try { parser.parse(new InputSource(new ByteArrayInputStream(xml.getBytes()))); Document doc = parser.getDocument(); NodeList entries = doc.getElementsByTagName("entry"); for (int i = 0; i < entries.getLength(); i++) { String name = null; String tweet = null; Element entry = (Element) entries.item(i); NodeList titleList = entry.getElementsByTagName("title"); if (titleList.getLength() == 1) { tweet = titleList.item(0).getTextContent(); } NodeList authorList = entry.getElementsByTagName("author"); if (authorList.getLength() == 1) { Element author = (Element) authorList.item(0); NodeList nameList = author.getElementsByTagName("name"); if (nameList.getLength() == 1) { name = nameList.item(0).getTextContent(); } } System.out.println(name + "さんのツイート"); System.out.println("\t" + tweet); } } catch (Exception e) { e.printStackTrace(); } } } package nikkei; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; import org.apache.http.client.HttpClient; import org.apache.http.client.methods.HttpGet; import org.apache.http.impl.client.DefaultHttpClient; import org.apache.http.util.EntityUtils; public class SearchAPIClient { public String execute(String keyword) throws Exception { String url = "https://twitter.com/search?q=" + keyword; HttpClient httpClient = new DefaultHttpClient(); HttpGet httpGet = new HttpGet(url); HttpResponse response = httpClient.execute(httpGet); HttpEntity entity = response.getEntity(); if (entity != null) { return EntityUtils.toString(entity); } else { return null; } } } よろしくお願いいたします。

    • ベストアンサー
    • Java
  • XSLTの置換(?)

    XSLT初心者です。 例えば、 -XML------------- <data>○○○○○<color>●●●●●</color>○○○○○○○○○○○○</data> ---------------- があったとして、それを、 -HTML------------- <p>○○○○○<font color="red">●●●●●</font>○○○○○○○○○○○○</p> ---------------- のようなHTMLへ変換するためのXSLTは どのように記述すればよいのでしょうか? 初歩的な質問なのかも知れないのですが、 よろしくお願いします。

    • ベストアンサー
    • XML
  • XSLT変換した際、必要のないxmlns宣言が入ってしまう

    標準JavaAPIのXSLT(Transformerクラス)(実体はXerces)を使用して、 複数のXML文書からXHTMLを作成していますが、 作成されたXHTMLに、必要のないxmlns宣言が含まれてしまいます。 <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:hoge="http://hogehoge" xmlns:hage="http://hagehage"> ...いろいろ... </html> のような感じです。 このXHTMLの中に、もはやhogeやhageの名前空間の要素は存在していないのに書き込まれてしまいます(そしていらないです)。 おかげでxhtml1.0の妥当性が損なわれてしまっています。 どうやらXSLTのtemplateでmatchした時に挿入する要素に、matchした名前空間接頭辞宣言が付いてしまうようなのですが、これを回避する方法はありませんでしょうか。 質問内容が分かりにくそうなので、補足要求もどんどんお願いします。

    • ベストアンサー
    • XML

専門家に質問してみよう