Fast Infoset

From Wikipedia, the free encyclopedia

Fast Infoset (or FI) specifies a binary encoding format for the XML Information Set (XML Infoset) as an alternative to the XML document format. It aims to improve the performance of serializing and deserializing XML and to allow the XML to be stored in a more efficient way than the usual, text-based XML document format.

One can think of FI as gzip for XML, though FI aims to optimize both document size and processing performance, whereas gzip optimizes only the size. While the original formatting is lost, no information is lost in the conversion from XML to FI and back to XML.

The Fast Infoset specification is defined by both the ITU-T and the ISO standards bodies. FI is officially named ITU-T Rec. X.891 and ISO/IEC 24824-1 (Fast Infoset), respectively. However, it is commonly referred to by the name, Fast Infoset. ITU-T approved the standard on May 14, 2005, while it is at the stage of a Final Committee Draft under the ISO process.

A common misconception is that FI requires ASN.1 support. Although the formal description uses ASN.1 formalisms, ASN.1 is not required by implementations.

[edit] Implementations

A Java-based implementation of the FI specification is available as part of the GlassFish project. Confusingly, the name for this project is fi. The library is open-source and is distributed under the terms of the Apache License 2.0. Several projects use this implementation, including the reference implementation for JAX-RPC and JAX-WS used in JWSDP.

FastInfoset.NET is a C# implementation for the .NET Framework. It is dual licensed, available under the LGPL open-source license and under a commercial license.

[edit] External links