WDDX

WDDX (Web Distributed Data eXchange) is a programming language-, platform- and transport-neutral data interchange mechanism designed to pass data between different environments and different computers.

History

WDDX was created by Simeon Simeonov of Allaire Corporation in 1998,[1] initially for the ColdFusion server environment. WDDX was open-sourced later that year.[2]

Usage

WDDX is functionally comparable to XML-RPC and WIDL.[3] The specification supports simple data types such as number, string, boolean, etc., and complex aggregates of these in forms such as structures, arrays and recordsets (row/column data, typically coming from database queries). There are WDDX interfaces for a wide variety of languages, including ColdFusion, Ruby, Python, PHP, Java, C++, .NET, Actionscript, lisp, Haskell, Perl.

The data is encoded into XML using an XML 1.0 DTD, producing a platform-independent but relatively bulky representation. The XML-encoded data can then be sent to another computer using HTTP, FTP, or other transmission mechanism. The receiving computer must have WDDX-aware software to translate the encoded data into the receiver's native data representation. WDDX can also be used to serialize data structures to storage (file system or database). Many applications use WDDX to pass complex data to browsers where it can be manipulated with JavaScript, as an alternative to JSON.

Example from php.net:[4]

<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>

Notes

  1. Simeonov, Simeon. "WDDX: Distributed Data for the Web". Retrieved 2007-02-05.
  2. Itoi, Nikki Goth (February 1999). "Syndicating the Web: Businesses are hoping that the ICE protocol will reduce the Web's content-sharing hassles". Red Herring. Archived from the original on October 13, 1999.
  3. Udell, Jon (1999-06-07). "Exploring XML-RPC: DCOM? CORBA? RMI? Why Not Just XML-RPC?". Byte. Archived from the original on March 4, 2000. Retrieved 2015-11-17.
  4. http://www.php.net/wddx


This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.