XML - Managing Data Exchange/WDDX

Learning objectives
Upon completion of this chapter, you will be able to answer the following questions:
 * What is WDDX?
 * What are the uses of WDDX?
 * What are Web Syndicate Networks?
 * What are the benefits of WDDX?

Introduction
WDDX (Web Distributed Data eXchange) was created by Allaire, now known as Macromedia, to solve the problem of exchanging data between different web applications. It was originally intended to be used to exchange data between ColdFusion and other web application languages. This XML-based technology enables complex data to be exchanged between totally different Web programming languages by creating 'Web Syndicate Networks.' WDDX consists of a language-independent representation of data based on an XML 1.0 DTD, and a set of modules for a wide variety of languages that use WDDX.

Features

 * can be used with HTTP, SMTP, POP, FTP and other Internet protocols that support transferring textual data
 * must be using Netscape 3.0+ or Internet Explorer for Windows or any versions for Unix and Mac platforms
 * supports boolean, number, date-time, and string data types
 * supports complex data types like arrays, structures, and recordsets
 * not a formal standard, but is free and widely distributed and is based on standard-base technologies like XML 1.0

How it Works
The way that the web distributed data exchange works is by assigning a specific module for the given programming language to translate the data into an abstract XML format. Another specific module then translates the XML back into another programming language for another web application. For example, if you had an array in a ColdFusion program that you wanted to send to an ASP program, it would first be serialized into XML and sent to the ASP server. The ASP server would then deserialize it and convert it to VBScript for use in the ASP program.

Web Syndicate Networks
The term 'Web Syndicate Network' refers to a group of websites that share their content and transactions. This allows for economies of scale as each site can use shared database content or even transactions and procedures.