トップQs
タイムライン
チャット
視点

Expat

XMLパーサーライブラリ ウィキペディアから

Remove ads

Expatは、C言語C99)で記述されたストリーム指向のXML 1.0パーサライブラリである[3]。最初期に登場したオープンソースのXMLパーサの1つとして、Expatは多くのオープンソースプロジェクトにおいて採用されてきた。こうしたプロジェクトには、Apache HTTP ServerMozillaPerlPythonPHPなどが含まれる。また、他の多くの言語にもバインディングされている。

概要 作者, 開発元 ...
Remove ads

名称

創始者によれば、Expatという名称は、当時自分がエクスパットであったことに由来する[要出典]。「ex」と「pa」は、それぞれXMLとパースを意味している。

年表

ソフトウェア開発者ジェームズ・クラークは、World Wide Web ConsortiumにおいてXMLワーキンググループの技術リードを務めていた1998年に、バージョン1.0をリリースした[要出典]。クラークはその後、バージョン1.1および1.2をリリースした後、2000年にクラーク・クーパーおよびフレッド・ドレイクを中心とするグループにプロジェクトを引き継いだ。この新たなグループは2000年9月にバージョン1.95.0をリリースし、現在もバグ修正や機能拡張を取り入れた新バージョンの公開を続けている。

入手

ExpatプロジェクトはGitHub上にホストされている。主要な[要出典]オペレーティングシステム向けのバージョンが存在する。

デプロイ

Expatライブラリを使用するには、プログラムが最初にExpatに対してハンドラ関数を登録する必要がある。ExpatがXML文書を解析する際、入力ストリーム中のトークンを検出すると、それに応じて登録されたハンドラを呼び出す。これらのトークンと関連するハンドラの呼び出しは「イベント」と呼ばれる。一般に、プログラムはXML要素の開始・終了イベントや文字イベントに対してハンドラ関数を登録する。Expatは、XML名前空間の宣言、処理命令、DTDイベントといった、より高度なイベント処理にも対応している。

Expatの解析イベントは、Simple API for XML(SAX)で定義されたイベントに類似しているが、ExpatはSAX準拠のパーサではない。Expatライブラリを組み込んだプロジェクトでは、SAXや場合によってはDOMパーサをExpatの上に構築することが多い。Expatは主にストリームベース(プッシュ型)のパーサであるが、任意の時点で解析を停止・再開できるため、「プル」型パーサの実装も比較的容易である。

Remove ads

脚注

外部リンク

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads