[xsd-users] Efficient XML Interchange Format (Exi)

Paquette, Patrick PaquetP at navcanada.ca
Fri Jan 23 09:58:45 EST 2009


> Hi Raymond,
> 
> Rizzuto, Raymond <Raymond.Rizzuto at sig.com> writes:
> 
> > Does XSD support/plan to support Efficient XML Interchange or 
> > other mechanisms to reduce the size of XML messages?
> 
> We do not currently support EXI nor have any definite plans to 
> support it. We do support compact and fast (up to 10x speed up)
> binary serialization into a number of data representations (CDR,
> XDR, custom formats). It should be a lot faster and more compact
> than any binary XML representation could ever get because it does
> not serialize the markup, only the data. See Section 5.2, "Binary
> Serialization" in the C++/Tree Mapping User Manual for details:
> 
> http://codesynthesis.com/projects/xsd/documentation/cxx/tree/m
> anual/#5.2
> 
> Most people go with binary formats for one (or both) of two 
> reasons: (1) more compact representation, (2) faster parsing
> and serialization. The problem with XSI, and binary XML formats
> in general is that they are a half-step in that direction: while
> they are more efficient than textual XML, they still don't achieve
> the maximum efficiency offered by the markup-less binary formats.
> It seems that the majority of people in this situation prefer to
> go all the way. This explains why we don't get many inquiries about 
> supporting binary XML (you are the second person asking about EXI)
> and have quite a few people using the binary serialization support.
> 
> 
> > After a successful 1st phase of the project I am on (in large part
> > due to XSD), we are seeing two issues with our use of XML.  One is
> > the network bandwidth associated with a projected 200 million 
> > messages of 2-4k per message during a 7 hour period.  The other 
> > is with the CPU load on the applications receiving and parsing 
> > the XML messages (these are C# clients using Microsoft's parser).
> > 
> > It seems like EXI might at least address issue 1.
> 
> Since you are using C# on the other end, it may be harder for you
> to use binary serialization since there is no way to generate the
> insertion/extraction code for C# classes.
> 
> I agree EXI might address your first problem which can probably
> be also addressed by simply compressing XML being sent.
> 
> If you really need support for EXI, we can discuss implementing
> it as a custom feature on the commercial basis.
> 
> Boris
> 
> 
> 

In researching bandwidth reduction solutions, I've seen other tools use
something called Fast Info Set...

http://en.wikipedia.org/wiki/Fast_Infoset

Which are implemented by other vendors...

Which standard currently prevails?

Patrick




More information about the xsd-users mailing list