(StAX から転送)
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2009/09/17 01:30 UTC 版)
Streaming API for XML(StAX)は、JavaでXML文書を読み書きするためのAPIである。
従来のXML APIは、次のどちらかである。
これらはそれぞれに利点がある。前者(例えばDOM)は文書へのランダムアクセスが可能であり、後者(例えばSAX)は使用メモリが少なくより高速に動作する場合が多い。
この2つは対極に位置するアクセス手法であると言える。ツリーベースのAPIは制約のないランダムアクセスとデータの操作が可能である一方、イベントベースのAPIは文書を1回スキャンするだけである。
StAXは、その中間の手法として設計された。StAXの考え方では、プログラムの操作点は文書内のある地点を指すカーソルである。アプリケーションがカーソルを進めるということは、必要に応じて自分がパーサーから情報を取り出すことになる(pull型)。これはSAXのようなイベントベースのAPIとは異なる。SAXではパーサーがアプリケーションにデータを送りつけるので(push型)、アプリケーション側が文書内の位置を追跡しなければならない場合は必要に応じてイベントとイベントの間で状態を保持しておく必要がある。
目次 |
StAXは、互換性のない多数のpull型XML APIにその起源を持つ。これらAPIのうち最も有名なXMLPULLの作者(Stefan HausteinとAleksandr Slominski)と、その他のAPIの作者であるBEAシステムズやオラクル、サン、Breeze Factor、ジェームズ・クラークの協働により誕生した。
JSR-173の最終仕様、V1.0より(フェアユースに基づき使用)
以下、引用:
// Java public interface XMLStreamReader { public int next() throws XMLStreamException; public boolean hasNext() throws XMLStreamException; public String getText(); public String getLocalName(); public String getNamespaceURI(); // ...以下のメソッドは省略 }
// Java public interface XMLStreamWriter { public void writeStartElement(String localName) throws XMLStreamException; public void writeEndElement() throws XMLStreamException; public void writeCharacters(String text) throws XMLStreamException; // ...以下のメソッドは省略 }
XMLInputFactory f = XMLInputFactory.newInstance(); XMLStreamReader r = f.createXMLStreamReader(... ); while (r.hasNext()) { r.next(); }
JavaでXMLを構文解析するための他の方法としては、以下のものがある。
(StAX から転送)
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2018/12/23 06:25 UTC 版)
ナビゲーションに移動 検索に移動スタックス(Stax)
| |
このページは曖昧さ回避のためのページです。一つの語句が複数の意味・職能を有する場合の水先案内のために、異なる用法を一覧にしてあります。お探しの用語に一番近い記事を選んで下さい。このページへリンクしているページを見つけたら、リンクを適切な項目に張り替えて下さい。 |
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/06/10 16:50 UTC 版)
「三宅裕司のいかすバンド天国に出場したバンド」の記事における「STAX (#2)」の解説
詳細不明。
※この「STAX (#2)」の解説は、「三宅裕司のいかすバンド天国に出場したバンド」の解説の一部です。
「STAX (#2)」を含む「三宅裕司のいかすバンド天国に出場したバンド」の記事については、「三宅裕司のいかすバンド天国に出場したバンド」の概要を参照ください。