ExiProcessor is a command-line program that encodes text XML files into binary EXI and decodes EXI files into XML. It uses the open source Java-based library EXIficient (http://exificient.sourceforge.net) as the EXI parser. In essence, ExiProcessor is a command-line interface to EXIficient.
ExiProcessor can help people learn about the various EXI encoding and decoding options and how those options affect compression ratios. The source code itself can also be used as an example of how to integrate EXIficient into existing Java XML libraries.
EXI or Efficient XML Interchange is a W3C Recommendation (http://www.w3.org/TR/exi/) for binary encoding of XML, and can result in significantly better compression than general compression algorithms such as gzip.
Command Line Examples:
Encode XML to EXI:
java -jar ExiProcessor.jar -xml_in notebook.xml -exi_out notebook.exi
Decode EXI to XML file:
java -jar ExiProcessor.jar -exi_in notebook.exi -xml_out notebook.decoded.xml
Decode EXI to XML on stdout:
java -jar ExiProcessor.jar -exi_in notebook.exi
Download the latest binary distro (source and build.xml included):