Skip to main content

Binary data defined by XML Schema?

1 reply [Last post]
Joined: 2004-03-04

Why does it have to be Binary XML with dictionary encoded with the binary data? How about using binary data whose structure is defined by an XML document (schema)?
Once you define the structure using an XML document, code generators will generate binary encoding/decoding functions. For tightly coupled systems, the encoding/decoding libraries will be available at all ends. For loosely coupled systems it is available to be downloaded from UDDI registry. Of course I assume here all ends are java which isn't valid, for such cases if the encoding and decoding are standardized it is possible to "generate" this for any language by any endpoint.

Reply viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
Joined: 2003-06-20

[Sorry for the late reply, catching up with email].
There is already a standard for what you are referring to and it is used by Fast Web Services. The X.694 specification (Fast Schema we call it) does what you refer to.
The advantages are that it produces very compact and efficient encodings (fast to serialize and parse). The disadvantages are the encodings are not self-describing, tightly coupled and it can be difficult to support versioning. In some scenarios the advantages outweight the disadvantages. But in others where structure or self-description is required such a solution will not work well. Maybe Jini would be a good solution in such scenarios to download classes for interoperable communication when using the Java platform?
Fast Infoset allows for the vocabulary (what you refer to as a dictionary) to be referenced using a URI that is encoded instead of the vocabulary. This can reduce the size of small messages. In this case fast infoset documents are no longer self-describing (unless you know what the URI references to) but still retain structure and allow for extensibility.