米BEA Systemsが米国時間11月5日に,Webサービス向けJava API仕様「Streaming API for Java(StAX)」のプレビュー版を発表した。StAXを使うとJavaからXMLが利用しやすくなり,開発者の生産性が向上するという。

 同社は,「WebサービスなどのXMLベース・アプリケーションが広まったことで,企業の現場ではJavaアプリケーションからXML文書をアクセス/処理することの重要性が高まっている」と説明する。現在のところ,こうしたXML文書を処理するためのJava用APIは,Simple API for XML(SAX)タイプのイベント・ベース型ストリーミングAPIと,Document Object Model(DOM)タイプのツリー・ベースAPIの2種類に大別できる。

 ただし「いずれの手法にも,それぞれ長所と短所がある」(同社)。「たとえばSAXは高速で効率がよいものの,開発作業全般を通しての制御が行いにくく,余計な作業を強いられることがよくある。それに対し,ツリー・ベースのDOMは制御しやすいが,メモリー消費量が多く,大規模な文書の処理や,メモリー容量の限られる環境には向かない」(同社)

 同社のStAXは,両手法の短所を取り除き,長所を生かすよう設計した仕様という。StAXはSAXおよびDOMと違って双方向性を備え,既存のXML文書を読み込むだけでなく,新しい文書の作成にも対応する。またほかのイベント・ベースの手法と異なり,イベントをコールバックで処理せず“プル”できる。その結果,XML文書の解析を中断/読み飛ばししたり,下位層へ移動したりといった動作が可能となる。

 「メモリー使用量の減少と,XML/Javaアプリケーション開発における精度と制御性の向上により,StAXは開発者コミュニティに新たな動きを起こすだろう」(BEA社先進開発担当チーフ・アーキテクト兼上級副社長のAdam Bosworth氏)

 なおStAXは,Java仕様作成要求(JSR:Java Specification Request)「JSR 173」として検討を進めている。同社はプレビュー版を,WWWサイトで直ちに無償提供する予定。

◎関連記事
米Borland,Javaアプリ開発環境の新版「JBuilder X」を発表
米Borland,.NET Framework用の設計/モデリング/コーディング環境を発表
米Borland,.NETとJ2EEの連携を可能にする開発ツール「Janeva」などを発表
Linux向けの .NETツールを開発している――米BorlandのCEOが語る
米SunがJava対応Webサービス開発用統合プラットフォームを発表。「3万6000ドル相当の製品を999ドルで」
米アクセンチュア,大規模Webサービス向けのソフト開発プラットフォームを発表
「Javaは“首席卒業生”,.NETは“落第生”」――Scott McNealy氏がJavaOneで講演
「.NET」と「Java」に二分されるWebサービスのプラットフォーム,来年はともに約60%の開発者が使用

[発表資料へ]