XPath

XML パーサへの API は SAX と DOM が代表的である.

  • SAX … XML 文書を1行ずつ順番に読み出す.メモリをあまり必要としない.ランダムアクセスに向かない.
  • DOM … XML 文書を1つの木構造に変換する.メモリがたくさん必要.ランダムアクセスに向く.

Xalan が提供する XPath の機能は DOM によるものらしく,UniProt の XMLファイル (1GB 弱) を扱おうとすると,OutOfMemoryError で強制終了する.

JavaVM の最大ヒープサイズ (-Xmx オプション) を 1.5GB くらいに設定してもまだ落ちる.

もうだめぽ