Jump to content

Binary XML

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Macrakis (talk | contribs) at 14:38, 8 June 2012 (update status of EXI standard). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Binary XML is a compact representation of XML (Extensible Markup Language). Using a binary XML format generally reduces the verbosity of XML documents thereby also reducing the cost of parsing,[1] but hinders the use of ordinary text editors and third-party tools to view and edit the document. There are several competing formats, but none has yet emerged as a de facto standard, although the World Wide Web Consortium adopted EXI as a Recommendation on 10 March 2011.[2]

Binary XML is typically used in applications where the performance of standard XML is insufficient, but the ability to convert the document to and from a form (XML) which is easily viewed and edited is valued. Other advantages may include enabling random access and indexing of XML documents.

The major challenge for binary XML is to create a single, widely adopted standard. The International Organization for Standardization (ISO) and the International Telecommunications Union (ITU) published the Fast Infoset standard in 2007 and 2005, respectively. Another standard (ISO/IEC 23001-1), known as Binary MPEG format for XML (BiM), has been standardized by the ISO in 2001. BiM is used by many ETSI standards for Digital TV and Mobile TV. The Open Geospatial Consortium also provides a Binary XML Encoding Specification (currently a Best Practice Paper) optimized for geo-related data (GML).

Alternatives to binary XML include using traditional file compression methods on XML documents (for example gzip); or using an existing standard such as ASN.1. Traditional compression methods, however, offer only the advantage of reduced file size, without the advantage of decreased parsing time or random access. ASN.1 is being used as the basis of Fast Infoset, which is one binary XML standard. There are also hybrid approaches (e.g., VTD-XML) that attach a small index file to an XML document to eliminate the overhead of parsing.[3]

Binary XML Efforts

Projects and file formats related to the notion of binary XML include:

  • BiM Standard, from the ISO, developed by the MPEG working group
  • BXML open, patent-unencumbered binary-encoding format for XML data, developed by CubeWerx Inc. for the OpenGIS Consortium
  • Fast Infoset, a standard published by ISO/IEC and ITU-T
  • Efficient XML from AgileDelta, Inc., selected as the basis for the W3C Standard for Binary XML (EXI)
  • Extensible Binary Meta Language (EBML) from Matroska
  • Wireless Binary XML (WBXML)
  • .NET Binary Format: XML Data Structure [2]
  • Binary NUX (BNUX) format by NUX project
  • XMill, schema-independent non-queriable XML compression format
  • XGrind, homomorphic queriable XML compression format
  • XQueC, non-homomorphic queriable XML compression format

Other projects that have functionality related to (or competing with) binary representations include:

References

  1. ^ The performance woe of binary XML http://webservices.sys-con.com/read/250512.htm
  2. ^ John Schneider, Takuki Kamiya, eds., "Efficient XML Interchange (EXI) Format 1.0", W3C Recommendation 10 March 2011 [1]
  3. ^ Index XML documents with VTD-XML