2009-07-14 11 views
1

入ってくるxmlドキュメントを解析する必要があります。それらはすべて同じDTDを持っています。新しいXML文書を解析するたびに、Sax ParserにDTDを読み込ませたくありません。とにかく、パーサにDTDをロードして、後続の解析コールで再利用することはできますか?DTDをJavaのSAXパーサーにロード

答えて

3

文書を読み込むたびにリモートURLからDTDを読み込んでいるかどうかわかりません。

この場合、EntityResolverを定義してDTDのローカルコピーを指定できます。 SAXパーサーが文書を解析するたびに、 DTDのインスタンスへの参照が提供されます。

残念ながら、DTDをあらかじめロード/事前解析する方法はないと思います。

+0

冗長DTD関連のオブジェクトをすべてロードする際のオーバーヘッドを取り除きたいと思います。私は急速に連続して多くのXML文書を受け取り、それらを素早く処理する必要があります。 – anio

+0

私はあなたが排除できる唯一のオーバーヘッドはリモートローディングだと思います。 –

関連する問題