Identify the schema information, if any, used to encode the body no default value Specify alternate datatype representations for typed values in the EXI body no default value Specifies the block size used for EXI compression 1,, Specifies the maximum string length of value content items to be considered for addition to the string table. This schema is designed to produce smaller headers for option combinations used when compactness is critical. EXI processors MUST use the schema-informed grammars that stem from the schema in processing EXI options documents, beyond which there is no requirement as to the use of the schema, and implementations are free to use any methods to retrieve the instructions that observe the grammars for processing EXI options documents. Section 8. Below is a brief description of each EXI option.
|Published (Last):||8 January 2018|
|PDF File Size:||8.9 Mb|
|ePub File Size:||14.34 Mb|
|Price:||Free* [*Free Regsitration Required]|
Therefore, the client needs to provide this information in the uploadSchema command using the bytes and md5Hash attributes. They are mandatory in case EXI compressed schema files are uploaded to the server. Also note that the byte length and MD5 Hash should be computed on the original XML Schema file, not the compressed or decompressed version. This is done using the downloadSchema command, as follows: Example 8.
When the schema has been downloaded, the following successful download response is returned: Example 9. It might for instance have been updated. This means the bytes and md5Hash values corresponding to the downloaded file will not match the values expected by the client. This Configuration ID can be used by the client during successive connections to the server, to skip the larger part of the handshake, as is shown in the following example: Example If the configuration is still available on the server, the server responds: Example So, if the attribute is omitted, the client must consider the agreement to be nonexistent.
When no agreement is reached using the quick configuration approach, the client must restart the handshake and propose new compression parameters.
It does this using the normal compress stanza, as follows: Example Instead, special streamStart and streamEnd elements are sent. More information about that later. Instead separate streamStart and streamEnd elements have to be sent, allowing for similar semantics on the EXI-compressed channel, as described in the following subsections. For clarity, examples in this section are displayed in XML for readability.
But it is understood that the elements are sent using EXI compression and using the options defined during setup. This element replaces the start stream tag normally sent. Example The empty prefix is synonymous with the default namespace to use. This element replaces the closing stream tag send normally. It works best if clients are constrained and does not update its specification frequently.
In addition, the network should allow clients and servers to use not well-known port because this commeunication involves alternative TCP port. Typical steps of communication is as follows based on RFC [ 3 ]. Optional A client foo example. SRV 10 10 srv. Optional: the DNS server may tell the version of the default schema supported by the server. Currently there is only one version and has no effect.
For further discussion, see draft-doi-exi-messaging-requirement. The client connects to srv. As specified in Section 4.
First, client try to renegotiate XML schema used in the communication. Just after receiving the setupResponse, client re-opens the stream. This is performed efficiently because this series of messages from the last streamStart element has been encoded with the set of schemas and the set inclues schemas for MUC. This is not possible if either encoder or decoder does not support built-in grammar or the stream uses strict schema-informed grammar.
The client and the server may end the stream with exi:streamEnd tag anytime. This can skip the configuration setup and the communication can continue with preconfigured schemas.
Efficient XML Interchange
Tokyo and Kawasaki, Japan and Sunnyvale, U. Fujitsu has been participating in the EXI Working Group, which developed this technical specification, since the inception of the working group. Fujitsu plans to leverage the unique expertise gained in the course of developing this standard, through incorporation in Fujitsu products to enable customers to use EXI technology more easily and effectively. Background The W3C published the XML specification in , and since then it has come into widespread use as a data exchange format over the Internet, because of its capability and flexibility to represent data.
XEP-0322: Efficient XML Interchange (EXI) Format
This document describes measurements that had been made, by the Working Group, of the compactness and processing characteristics of various potential XML encoding formats 25 July The raw results of candidates testing is available. The WG maintains a wiki page documenting inaccuracies that have been found with regards to the measurements note document. In reverse chronological order, as of February , most recent publication of each document produced by the WG. Status history that predates the above events are described here. The task of this Working Group is to jointly establish and optimize, the performance of an alternate, non-textual, encoding of XML.