The rtExi2XmlStream function can be used to convert an EXI encoded document as described above back into XML form. This function takes as input an EXI-encoded message that is either in-memory or configured to be read from an input stream (see the rtxStreamCreateReader functions). The output stream can be any of the stream types that can be created with the rtxStreamCreateWriter functions - typically memory, file or socket. This function is used in the exi2xml utility program that is included in the utilites subdirectory of XBinder.
A SAX interface is also available that generates SAX events directly from EXI-encoded data. This interface is described in the rtEXI2SAX.h header file. It allows SAX startElement, characters, and endElement callback functions to be registered which will receive decoded EXI data as the instance is parsed.