XMLをモバイルデバイスなどでも高速処理可能にした新フォーマット「EXI」をW3Cが勧告

2011年3月15日

XMLをバイナリ化して効率的に圧縮することで転送速度や処理に必要なメモリ容量を小さくし、モバイルデバイスなどでも扱いやすくした「Efficient XML Interchange」(EXI)を、W3Cが3月10日に勧告しました(記事末にリンクしたEXIワーキンググループチェア 上谷卓己氏のビデオによると「エクシィ」と読むようです。)。

W3C Extends Reach of XML to New Devices, Applications

XMLは、表現したい値にタグ付けをして意味を示すというマークアップ言語の性格上、XML文書が肥大化しがちで、XML文書から値を取り出すためのパース処理も重くなるという課題を抱えていました。

例えばXMLで「20歳」という年齢を表現しようとすると<age>20</age>となり、20という2文字の値に対して11文字ものタグが付くことになります。そのためXMLによるデータ交換は効率が悪く、性能が出にくいものでした。その結果、JSONのようにシンプルなフォーマットに人気を奪われています(参考:JSONに押されるXMLの存在)。

EXIはこうしたXMLの課題を解決すべく、XML文書を効率化したバイナリフォーマットです。XMLの情報をバイナリによってコンパクトな表現に置き換え、さらに圧縮をかけることで、元のXML文書と比較して非常に小さく(XML文書によって異なるがおおむね1/10から1/100以上)なるため、高速な転送とパース処理に必要なメモリの軽減などを実現します。

XMLを用いてサービスの高速な提供を実現するほか、モバイルデバイスのような低い性能のデバイスでのXMLの取り扱いを容易にするなどの利点があります。

100倍以上の性能向上でモバイルデバイスへ

EXIは基本的に、終了タグのように頻繁にあらわれる情報を短いビットに、コメントのようにまれにしかあらわれない情報は長めのビットに割り当てることで、全体として効率よくコンパクトなバイナリ表現を実現します。また、そうした単純なルールだけでなく、XMLスキーマの情報があればそれも利用して要素の出現パターンなどを解析し、さらにコンパクトな表現にしています。

そのうえでDEFLATEアルゴリズムによる圧縮を行いますが、効率よく圧縮できるようバイナリ表現に対して前処理を行うことで、XML文書を単純にZIP圧縮するよりもずっと高い圧縮率を実現しています。圧縮にかかるCPU負荷はGZIPの1/2から1/3だそうです。

EXI仕様のエディタであるJohn Schneiderはプレスリリースの中でEXIのメリットを次のように説明しています。

“They’ve achieved over 100-fold performance improvements and expanded their data networks to high speed aircraft, automobiles, mobile devices and sensor networks.

これらは100倍以上の性能向上を実現し、そして高速なデータ通信を飛行機、自動車、モバイルデバイス、センサーネットなどへ拡大していく。

EXIをサポートするには、XMLパーサではなくEXIプロセッサの実装が必要となります。今後EXIプロセッサがXMLプロセッサのようにさまざまなソフトウェアに標準で搭載されるようになるかどうかがEXI普及のカギとなりそうです。

以下のURLで、EXIワーキンググループチェア 上谷卓己氏(米国富士通研究所)によるEXIの詳しい解説を見ることができます。http://netfish.halfmoon.jp/pub/EXI/2009-05-12.html

関連記事

あわせて読みたい

Web技術 Web標準 XML モバイル




タグクラウド

クラウド
AWS / Azure / Google Cloud
クラウドネイティブ / サーバレス
クラウドのシェア / クラウドの障害

コンテナ型仮想化

プログラミング言語
JavaScript / Java / .NET
WebAssembly / Web標準
開発ツール / テスト・品質

アジャイル開発 / スクラム / DevOps

データベース / 機械学習・AI
RDB / NoSQL

ネットワーク / セキュリティ
HTTP / QUIC

OS / Windows / Linux / 仮想化
サーバ / ストレージ / ハードウェア

ITエンジニアの給与・年収 / 働き方

殿堂入り / おもしろ / 編集後記

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本