What is OpenEXI?
- more compact
- faster to exchange
- faster to process.
OpenEXI is a project developing open source implementations of EXI.
Complete Java implementation (aka Nagasena) is avaiable.
C# version development is underway.
This short video, OpenEXI: A Quick Introduction, gives an overview of the key features of EXI implementations made available by OpenEXI project.
Introduction to OpenEXI is also available in PDF format.
The Nagasena Tutorial provides a concise yet comprehensive step-by-step guide to implementing EXI in your applications. It is accompanied by fully commented, working program code. Both the tutorial and the demonstration UI were developed by Dennis Dawson.
The implementation effort is motivated and sustanied in the hope that a solid open source implementation will catalyze EXI's adoption in many user communities.
EXI implementations produced by the OpenEXI project are available for public use under Apache License, Version 2.0.
Why not use GZip instead of EXI?
GZip is great for file compression, but that is not the only consideration. The processing time it takes to compress and expand files can outweigh the benefits of the compression itself. EXI not only achieves greater compression, but also provides substantially better performance than GZip.
Many EXI use cases involve efforts to modernize legacy applications in order to make them more suitable for interacting with technologies such as cloud computing and XML. Often, these applications use packed binary formats to increase the efficiency of data exchange. When smaller units of information are exchanged frequently, GZip does not always perform well enough to make XML format feasible. In fact, there are scenarios where GZip actually increases the size of an XML file after compression.
EXI competes well with and often surpasses performance of existing packed binary formats. EXI consistently beats GZip for XML file compression across datasets varying in size and complexity, collected from a wide range of use cases beyond those already discussed.
The OpenEXI project offers Nagasena, an EXI implementation in Java, developed by Fujitsu Laboratories of America.C# implementation is underway for enabling EXI on .Net.
Download Nagasena from here.
- W3C EXI Working Group Public Page
- EXIP (EXI Open Software Implementation in C language)
- EXIficient (another EXI Open Software Implementation)
- AgileDelta's Efficient XML