コンテンツへスキップ
uencoder

XML Stream

XMLストリーム解析(SAX/StAX)は、DOMツリーを構築せずにイベント駆動で要素ごとにXMLを処理し、大きなXMLファイルに対応する。

目的

メモリが制限される場面や大きな文書で、文書全体を読み込まずにイベントコールバックで要素を処理する。

メカニズム

SAXではパーサーがstartElement/endElement/charactersイベントを発火し、ハンドラーがコールバックで応答する。StAXはプルモデルで、アプリケーションがnext()を必要に応じて呼ぶ。ツリーを構築しないためメモリは一定である。

ユースケース

  • 大きなXMLファイルの解析
  • SAXのイベント処理
  • SOAPメッセージのストリーミング

関連ツール

References