Efficient XML Interchange

Last updated

Efficient XML Interchange (EXI) is a binary XML format for exchange of data on a computer network. It was developed by the W3C's Efficient Extensible Interchange Working Group and is one of the most prominent efforts to encode XML documents in a binary data format, rather than plain text. Using EXI format reduces the verbosity of XML documents as well as the cost of parsing. Improvements in the performance of writing (generating) content depends on the speed of the medium being written to, the methods and quality of actual implementations. EXI is useful for

Contents

History

The World Wide Web Consortium (W3C) formed a working group to standardize on a format in March 2006. EXI was chosen as W3C's Binary XML format after an evaluation of various proposals that included Fast Infoset. [1] The EXI format is derived from the AgileDelta Efficient XML format. [2] [3] EXI was adopted as a W3C recommendation by the W3C on 10 March 2011. A second edition was published in February 2014. [4]

In November 2016, the working group was renamed to "Efficient Extensible Interchange (EXI)" from "Efficient XML Interchange (EXI)" to reflect the broader scope of EXI applicability beyond XML to other data-description languages. [5]

Features

An advantage of EXI over Fast Infoset is that EXI (optionally) uses more constraints from the XML schema. This can make the EXI data more compact; for example, if the XML schema specifies that elements named 'bar' may only exist within elements named 'foo', EXI can assign a shorter token to the 'bar' element, knowing that it doesn't have to share the same token space as elements that occur elsewhere in the document. The main disadvantage to utilizing such "schema-informed" compression is that, not only does the document require a schema, but the decoder needs a copy of the same schema that the encoder used.

Uses

A variety of EXI-capable applications are available. [6]

A variety of EXI implementations are available that enable the integration of EXI capabilities in other tools. [7]

Related: EXI is being adapted for non-XML data formats as well.

EXI was recommended for use in the US Department of Defense Global Information Grid. [9]

Future work

Multiple experimental initiatives continue to be pursued by the EXI Working Group.

Related Research Articles

<span class="mw-page-title-main">Document Object Model</span> Convention for representing and interacting with objects in HTML, XHTML, and XML documents

The Document Object Model (DOM) is a cross-platform and language-independent interface that treats an HTML or XML document as a tree structure wherein each node is an object representing a part of the document. The DOM represents a document with a logical tree. Each branch of the tree ends in a node, and each node contains objects. DOM methods allow programmatic access to the tree; with them one can change the structure, style or content of a document. Nodes can have event handlers attached to them. Once an event is triggered, the event handlers get executed.

SOAP is a messaging protocol specification for exchanging structured information in the implementation of web services in computer networks. It uses XML Information Set for its message format, and relies on application layer protocols, most often Hypertext Transfer Protocol (HTTP), although some legacy systems communicate over Simple Mail Transfer Protocol (SMTP), for message negotiation and transmission.

<span class="mw-page-title-main">World Wide Web Consortium</span> Main international standards organization for the World Wide Web

The World Wide Web Consortium (W3C) is the main international standards organization for the World Wide Web. Founded in 1994 and led by Tim Berners-Lee, the consortium is made up of member organizations that maintain full-time staff working together in the development of standards for the World Wide Web. As of 5 March 2023, W3C had 462 members. W3C also engages in education and outreach, develops software and serves as an open forum for discussion about the Web.

<span class="mw-page-title-main">XML</span> Markup language by the W3C for encoding of data

Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing arbitrary data. It defines a set of rules for encoding documents in a format that is both human-readable and machine-readable. The World Wide Web Consortium's XML 1.0 Specification of 1998 and several other related specifications—all of them free open standards—define XML.

XSLT is a language originally designed for transforming XML documents into other XML documents, or other formats such as HTML for web pages, plain text or XSL Formatting Objects, which may subsequently be converted to other formats, such as PDF, PostScript and PNG. Support for JSON and plain-text transformation was added in later updates to the XSLT 1.0 specification.

X3D is a set of royalty-free ISO/IEC standards for declaratively representing 3D computer graphics. X3D includes multiple graphics file formats, programming-language API definitions, and run-time specifications for both delivery and integration of interactive network-capable 3D data. X3D version 4.0 has been approved by Web3D Consortium, and is under final review by ISO/IEC as a revised International Standard (IS).

An XML schema is a description of a type of XML document, typically expressed in terms of constraints on the structure and content of documents of that type, above and beyond the basic syntactical constraints imposed by XML itself. These constraints are generally expressed using some combination of grammatical rules governing the order of elements, Boolean predicates that the content must satisfy, data types governing the content of elements and attributes, and more specialized rules such as uniqueness and referential integrity constraints.

Various binary formats have been proposed as compact representations for XML. Using a binary XML format generally reduces the verbosity of XML documents thereby also reducing the cost of parsing, 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.

JSON is an open standard file format and data interchange format that uses human-readable text to store and transmit data objects consisting of name–value pairs and arrays. It is a commonly used data format with diverse uses in electronic data interchange, including that of web applications with servers.

Fast Infoset is an international standard that specifies a binary encoding format for the XML Information Set as an alternative to the XML document format. It aims to provide more efficient serialization than the text-based XML format.

The Extensible Metadata Platform (XMP) is an ISO standard, originally created by Adobe Systems Inc., for the creation, processing and interchange of standardized and custom metadata for digital documents and data sets.

XML Information Set is a W3C specification describing an abstract data model of an XML document in terms of a set of information items. The definitions in the XML Information Set specification are meant to be used in other specifications that need to refer to the information in a well-formed XML document.

SCXML stands for State Chart XML: State Machine Notation for Control Abstraction. It is an XML-based markup language that provides a generic state-machine-based execution environment based on Harel statecharts.

WAP Binary XML (WBXML) is a binary representation of XML. It was developed by the WAP Forum and since 2002 is maintained by the Open Mobile Alliance as a standard to allow XML documents to be transmitted in a compact manner over mobile networks and proposed as an addition to the World Wide Web Consortium's Wireless Application Protocol family of standards. The MIME media type application/vnd.wap.wbxml has been defined for documents that use WBXML.

Data exchange is the process of taking data structured under a source schema and transforming it into a target schema, so that the target data is an accurate representation of the source data. Data exchange allows data to be shared between different computer programs.

Extensible HyperText Markup Language (XHTML) is part of the family of XML markup languages which mirrors or extends versions of the widely used HyperText Markup Language (HTML), the language in which Web pages are formulated.

This is a comparison of data serialization formats, various ways to convert complex objects to sequences of bits. It does not include markup languages used exclusively as document file formats.

Data Format Description Language is a modeling language for describing general text and binary data in a standard way. It was published as an Open Grid Forum Recommendation in February 2021, and in April 2024 was published as an ISO standard.

References

  1. Robin Berjon; Jaakko Kangasharju, eds. (20 July 2006). "Analysis of the EXI Measurements". W3C. Retrieved 23 September 2016.
  2. "Lightning-Fast Delivery of XML to More Devices in More Locations". AgileDelta. 5 November 2015. Retrieved 23 September 2016.
  3. Mishra, Manvi; Gupta, Prabhakar; et al. (2024). "Rapid and Close-Packed Xml Solution with Efficient Extensible Interchange (EXI)". In Tripathi, Suman Lata; et al. (eds.). Emerging Trends in IoT and Computing Technologies. CRC Press. doi:10.1201/9781003535423-74. ISBN   9781003535423.
  4. "Efficient XML Interchange Working Group". Public web site. W3C. Retrieved 23 September 2016.}
  5. 1 2 3 Peintner, Daniel (22 November 2016). "Efficient representation for Web formats". W3C Blog. W3C. Archived from the original on 23 August 2024.
  6. EXI Working Group (28 March 2017). "EXI Deployment". EXI Working Group public page. World Wide Web Consortium. Retrieved 28 March 2017.
  7. EXI Working Group (28 March 2017). "EXI Implementations". EXI Working Group public page. World Wide Web Consortium. Retrieved 28 March 2017.
  8. Daniel Peintner; Don Brutzman, eds. (23 August 2016). "EXI for JSON (EXI4JSON)". Public Working Draft. World Wide Web Consortium. Retrieved 23 September 2016.
  9. Sheldon L. Snyder (1 March 2010). "Efficient XML Interchange (EXI) Compression and Performance Benefits: Development, Implementation and Evaluation" (PDF). Masters Thesis. US Naval Postgraduate School (NPS). Retrieved 23 September 2016.