I am (partially) writing a customized Schema Informed C/C++ EXI encoder and decoder for several schemas, and I have a general question about the header.
The first byte is 0x80 (no EXI cookier, [10] for distinguishing bits, [0] no presence bit for EXI options, [0_0000] format version of 1)
But what follows after that is something I can't find in the spec and it doesn't appear to be actual EXI data yet. Depending on what schema I'm using, I get a different set of bits so I assume it's something to indicate what schema is being used. How is this calculated? Where is it specified in the specification? (https://www.w3.org/TR/exi/).
Currently, I just skip over these bits for decode, and blindly write them for encode. Can somebody here tell me what these are? Have I just missed a portion of the EXI?
Nevermind, I figured it out. The XML can have something like 90 different ways to begin start, these are what the bits are, it selects which production is being made, even though only two really exist in practical use for my project.
I am (partially) writing a customized Schema Informed C/C++ EXI encoder and decoder for several schemas, and I have a general question about the header.
The first byte is 0x80 (no EXI cookier, [10] for distinguishing bits, [0] no presence bit for EXI options, [0_0000] format version of 1)
But what follows after that is something I can't find in the spec and it doesn't appear to be actual EXI data yet. Depending on what schema I'm using, I get a different set of bits so I assume it's something to indicate what schema is being used. How is this calculated? Where is it specified in the specification? (https://www.w3.org/TR/exi/).
Currently, I just skip over these bits for decode, and blindly write them for encode. Can somebody here tell me what these are? Have I just missed a portion of the EXI?
Sorry for late response. What bits follow in this case is ruled by the Schema-informed Document Grammar (https://www.w3.org/TR/exi/#informedDocGrammars)
Good luck!
Rumen
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
View and moderate all "Open Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Discussion"
I am (partially) writing a customized Schema Informed C/C++ EXI encoder and decoder for several schemas, and I have a general question about the header.
The first byte is 0x80 (no EXI cookier, [10] for distinguishing bits, [0] no presence bit for EXI options, [0_0000] format version of 1)
But what follows after that is something I can't find in the spec and it doesn't appear to be actual EXI data yet. Depending on what schema I'm using, I get a different set of bits so I assume it's something to indicate what schema is being used. How is this calculated? Where is it specified in the specification? (https://www.w3.org/TR/exi/).
Currently, I just skip over these bits for decode, and blindly write them for encode. Can somebody here tell me what these are? Have I just missed a portion of the EXI?
Thank you,-Rich
View and moderate all "Open Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Discussion"
Nevermind, I figured it out. The XML can have something like 90 different ways to begin start, these are what the bits are, it selects which production is being made, even though only two really exist in practical use for my project.
I am (partially) writing a customized Schema Informed C/C++ EXI encoder and decoder for several schemas, and I have a general question about the header.
The first byte is 0x80 (no EXI cookier, [10] for distinguishing bits, [0] no presence bit for EXI options, [0_0000] format version of 1)
But what follows after that is something I can't find in the spec and it doesn't appear to be actual EXI data yet. Depending on what schema I'm using, I get a different set of bits so I assume it's something to indicate what schema is being used. How is this calculated? Where is it specified in the specification? (https://www.w3.org/TR/exi/).
Currently, I just skip over these bits for decode, and blindly write them for encode. Can somebody here tell me what these are? Have I just missed a portion of the EXI?
Thank you,-Rich
Hi,
Sorry for late response. What bits follow in this case is ruled by the Schema-informed Document Grammar (https://www.w3.org/TR/exi/#informedDocGrammars)
Good luck!
Rumen