There is a W3C effort (working draft) titled Efficient XML Interchange (EXI) Format. EXI is the result of work by the W3C’s XML Binary Characterization (XBC) and Efficient XML Interchange (EXI) Working Groups, and as you can see is applicable to (and might be useful on) restricted devices such as mobile handsets.

The Efficient XML Interchange Working Group has published a Working Draft of Efficient XML Interchange (EXI) Format 1.0.

The Efficient XML Interchange (EXI) format is a very compact, high performance XML representation that was designed to work well for a broad range of applications. It simultaneously improves performance and significantly reduces bandwidth requirements without compromising efficient use of other resources such as battery life, code size, processing power, and memory. EXI is a very compact representation for the Extensible Markup Language (XML) Information Set.

EXI uses a grammar-driven approach that achieves very efficient encodings using a straightforward encoding algorithm and a small set of data types. Consequently, EXI processors are relatively simple and can be implemented on devices with limited capacity.

EXI is schema “informed”, meaning that it can utilize available schema information to improve compactness and performance, but does not depend on accurate, complete or current schemas to work. It supports arbitrary schema extensions and deviations and also works very effectively with partial schemas or in the absence of any schema. The format itself also does not depend on any particular schema language, or format, for schema information.

The EXI format uses a hybrid approach drawn from the information and formal language theories, plus practical techniques verified by measurements, for entropy encoding XML information. Using a relatively simple algorithm, which is amenable to fast and compact implementation, and a small set of data types, it reliably produces efficient encodings of XML event streams.

ceo