WDDX (Web Distributed Data eXchange) とは、プログラミング言語やプラットフォームやトランスポート層に依存しないデータ交換機構であり、異なる環境や異なるコンピュータ間でのデータ交換を実現する。数値、文字列、ブーリアンといった単純なデータ型をサポートし、それらを組み合わせた構造体や配列やレコードなどもサポートする。WDDX は各種言語でサポートされている。RubyPythonPHPJavaC++.NETFlashLISPHaskellなどがある。

データはXML 1.0 DTD でエンコード(符号化)され、プラットフォームに依存しない、まとまった形式となる。そのような形式のデータをHTTPFTPなど適当な転送機構で送る。受信側のマシンにはWDDXを解釈できるソフトウェアが搭載されており、そのマシンが扱える形式に変換を行う。WDDX はファイルシステムやストレージへ格納する際のデータシリアライズ機構としても使うことができる。典型的な使用法としては、WebブラウザでWDDXを解釈するJavaScriptを動作させ、サーバからブラウザに対して複雑なデータをWDDX形式で送る。これは一種のAjaxである。

WDDX は1998年、Allaire の Simeon Simeonov が ColdFusionサーバ環境向けに開発したのが最初である[1]

共に1998年に生まれた WDDX と XML-RPCSOAPWebサービスの先駆けとなった。

例: [2]

 <wddxPacket version='1.0'>
   <header comment='PHP'/>
   <data>
     <struct>
       <var name='pi'>
         <number>3.1415926</number>
       </var>
       <var name='cities'>
         <array length='3'>
           <string>Austin</string>
           <string>Novato</string>
           <string>Seattle</string>
         </array>
       </var>
     </struct>
   </data>
 </wddxPacket>

脚注 編集

  1. ^ Simeonov, Simeon. “WDDX: Distributed Data for the Web”. 2007年2月5日閲覧。
  2. ^ php.net/wddx

外部リンク 編集