# Moving Complex Data Structures Across the Web with WDDX

You can move complex data structures across the Web using Web Distributed Data Exchange (WDDX). This capability is based on XML 1.0 and can be used to exchange data between CFML applications and other applications.

Additionally, server-to-browser and browser-to-server JavaScript data exchanges can be instantiated using WDDX. Server data can be transferred to the browser and converted to JavaScript objects, while JavaScript data generated on the browser can be serialized, which involves translating the native data structures into an abstract representation in XML, and transferred to the application server. Conversely, you can deserialize WDDX XML into a native data structure.

This functionality is encapsulated in the CFWDDX tag.

While WDDX is a valuable tool for ColdFusion developers, it's utility is not limited to CFML. WDDX serialization of common programming data structures such as arrays, record sets, and structures enables data communication, via HTTP, across a range of languages and platforms.

The best source of information about WDDX is http://www.wddx.org/. This site, sponsored by Allaire Corporation, offers a free download of the WDDX SDK and a number of resources, including a WDDX FAQ and a developer forum.