Hi, Could it be you do not use the correct schema when you encode? Maybe the order of events is not following the grammar defined by the schema? I am sorry but I cannot help you - this could be cause by many different things including bug in exip code. // Rumen
Hi, 1. I do not know what is the issue - depends on the schema etc. 2. XML to EXI encoding is not supported - implementing it will not be very easy. You need to understand both XML/EXI standards and exip code base in detail. // Rumen
Hi, As you have seen exipe uses multi schemas in one file "how rule for qname.uri settings?" - Using exip requires gread deal of understanding of the EXI standard itself. If you cannot follow the exipe example then you could read the EXI spec - not the easiest thing to do unfortunately // Rumen
I am sorry I do not understand your question
You would need to preserve namespaces (i.e., include that option in the header) and also encode Namespace (NS) event after SE (start element): EventTypeClass.EVENT_NS_CLASS Check the EXI standard on that: https://www.w3.org/TR/2014/REC-exi-20140211/#encodingEvents // Rumen
Hi, Your usage of exipd looks correct - it supports multiple schema files so this should not be a problem. It could be related to the out of band options "-ops=x%-%-%-%- " that you pass - try decoding v2g_2_encode.exi using some other EXI processor with the same out of band options. If you succeed it is probably some bug or unsupported feature in exip. Best, Rumen
Hi, I understand your question as follow: you have an XML Schema File which is EXI encoded and you are trying to decode it using exip. Moreover the EXI encoded schema file has No EXI options in the header and no out-of-band options as far as you know. Answer: You cannot decode EXI stream if you do not know what options are used during encoding. Tip: Try with some other EXI decoder first. If you succeed with it then you can try with exip. Best, Rumen
Hi Francesc, There are extra requirements for the EXI encoded XSDs (XML Schemas) when used as a source for the grammar generation in exip. The fidelity option Preserve.prefixes must be set in order to decode the QNames in the value items correctly. You need to include the header in the resulting EXI stream Please have a look at "7.2 Converting XML Schema files to EXI" section of the user documentation (http://exip.sourceforge.net/exip-user-guide.pdf) Best regards, Rumen
Hi Tobias, The EXI spec does not distinguish between base64Binary or hexBinary encoding of binary data. The binary data is opaque for the exi/exip - a sequence of bytes. The confusion comes from the XML/XML Schema where there are two different types for binary data depending on how it is encoded in the text XML. exip accepts a sequence of bytes when encoding/decoding of binary data. If you have it as base64Binary just send the base64Binary encoded sequence of bytes. If you have it raw not need to...
I looked at the title now and realize it is text XML you would like to use as text input. Please have a look at this feauture request: https://sourceforge.net/p/exip/feature-requests/1/ Full support for that would require a full-blown XML parser integration. It is not implemented at the moment. Best, Rumen
Hi Francesc, Sorry for the late response! Exip provides a low level C API which does not work on text files. The ´simpleEncoding´ example gives you one possible way to use the encoding API. You would need to implement text input to exip API calls translation yourselves which depending on the text input you choose can be quite some work because as I said exip is very low level. I hope this helps! Best regards, Rumen
Hi Tobias, Yes, exip provides limited support for the W3C EXI profile. Check the configuration file: exipConfig.h The setting (macro) is EXI_PROFILE_DEFAULT Setting this to ON enable EXI Profile default (most restrictive) mode of operation. It is not possible at the moment to include the W3C EXI profile extra options in the EXI header. I hope this helps. Best, Rumen
Hi Tobias, I am not sure I understand the issue. You are saying the first element should look like this <ns:element xmlns:ns2="somenamespace"> [...] </ns:element> but then the ns prefix is never declared. My guess is that it should be something like: <ns:element xmlns:ns="a_namespace" xmlns:ns2="somenamespace"> [...] </ns:element> In this case you need to set local-element-ns for "a_namespace" NS to true. I hope this helps. Regards, Rumen
Hi, You can have a look at a test in the exip test suite which has namespaces and use it as an example. Please see file tests/check_exip.c The function for encoding a document with a namespace is encodeWithDynamicTypes() I hope this helps. Best regards, Rumen
Hi Nikola, Thanks for the clarifications! Your last comment opened my eyes :) What is happening at the end is that sizeof(Index) number of bytes (e.g. 4), are written over sizeof(SmallIndex) number of bytes (e.g. 2) so in this case 2 bytes from the stack are corrupted. Very nasty bug I would say. There were not that many times I used different types for Index and SmallIndex so therefore I have not hit the issue before. Here is a link to the bug report: https://sourceforge.net/p/exip/bugs/19/ Thanks...
Stack corruption due to pointer type mismatch
Hi, Can you explain a bit more? Function addPfxEntry() takes a pointer to SmallIndex not a SmallIndex value. Function addEmptyDynEntry() takes Index pointer so passing SmallIndex pointer should be fine. In addEmptyDynEntry() the value pointed by pfxEntryId (SmallIndex) is assigned some Index value - worst case you can get is integer overflow but not stack corruption. This should not happen also as the number of prefixes is usuallty super small. Am I missing something? Best regards, Rumen
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
Added inflections to the EN-SV dictionary
Remove absolute path from the inflections XSLT ...
Small additions in the About section of the boo...
Scripts for fetching the extra inflections from...
Hi, It is hard to understand your problem: Maybe you do not pass the appropriate...
There could be some unsuppoerted feature in the XSD - there are not that many but...
There seems to be some problem with the schema. What if you use exipd executable...
Hi Wahab, No, there will not be a problem - if you think about it the Value string...
Hi Wahab, I think making the Production array size variable is very good idea. Indeed,...
Hi Wahab, I was looking for some documentation that explains the exip terminology...
Hi Wahab, There is nothing you could do if the input files are encoded without schema...
Hi Wahab, It is not based on empirical tests but more like intuition and as you might...
Great thanks for the detailed instructions! This approach can be used for the auto-generated...
Place static grammar definitions in ROM and not RAM e.g., StaticEXIOptions
Hi Wahab, Thanks for your suggestion and feedback! StaticEXIOptions is the grammar...
The scripts used to convert bg-en kindle dictio...
Initial commit
Additions to the readme file
Commit the Beta version of the conversion scripts
This is not really a bug since the strings are intentionally length prefixed and...
Fix for a portability issue due to padding in D...
As I wrote above - many thanks for the detailed explanation! I think the solution...
Hi John, Thank you for the time you spend to explain the matter in such a detail!...
Hi John, Thanks for the feedback! The code related to the dynamic arrays is indeed...
Hi Daniel, I was experimenting with the EXIficientGUI and wanted to set the SchemaId...
Hi, Thank you for the contributions and the info! I committed your patch. grammarGen...
Fix for the MSVS2010 build by Oren, see:
Hi Oren, There are no fancy stuff in the code. I cannot guarantee strict conformance...
Thanks for the information Oren! I would happily update the MSVS2010 project definition...
As for the tested platform: windows and linux 32/64 bits, Renesas 16 bit microcontroller....
Hi Oren, The problem must be related to the MS VS2010 config - this build is not...
Hi Oren, Currently there is no way to configure exip for not using dynamic memory....
16 bit int problems
Fix [BUG] for 16-bit int platforms. See bug #16
exipg: main() fails to initialise dvis.pfx
Thanks for the bug report! dvis.pfx set to 0.
Fix [BUG]#17 and some type warnings for 64bit
Hi John, Thank you for this bug report! The encodeNBitUnsignedInteger(), decodeNBitUnsignedInteger(),...
There shouldn't be such requirements. exip was tested on 16, 32 and 64 bit architectures....
Final fixes before the 0.5.4 release
Implementation of the totalDigits and fractionD...
Implement all XML Schema type checks
Implement the xs:totalDigits facet validation
Final fixes: the generation of the EXI grammars...
[BUG] with the prefix table creation fixed
Generating the EXI grammars from EXI encoded XM...
Temp static options schema
Added a byte-align unit test for the non-blocki...
The size of the buffer after the encoding is finished is: strm->context.bufferIndx...
Allow for deviations in static EXI schema
Revert the previous commit (all changes connect...
Initial step in supporting deviations when usin...
Non-blocking parsing interface for processing streaming data
The non-blocking parsing and serializing interface for processing streaming data...
Fixes and a unit test for both the non-blocking...
Non-blocking parsing and serializing when data ...
Fix in the encoding of N-bit Unsigned integer w...
First steps in supporting push-parsing interfac...
Small optimizations in streamRead.c
Initial commit
Optimizations of encodeUnsignedInteger() and de...
Fixed bug in Time Zone processing for dateTime ...
Fixed bug in Time Zone processing for dateTime ...
Hi Raino, I am happy to hear that the substitutionGroup fix worked for you. The EXI...
You need to compile "exipe" and "exipd" first. No, there is no such function. "exipd"...
Hi Andre, It should not be sensitive but maybe there is some issue somewhere. In...
Hi Andre, I am quite busy at this moment (writing my thesis) but I appreciate that...
Hi, As I suspected in my previous post you have not set inputBuffer.bufContent correctly....
Hi Fabian, I have no idea what may cause this error. Can you upload SAPRes01.exi...
Hi Fabian, I have no idea what my cause this error. Can you upload SAPRes01.exi or...
Hi, The header and the whole EXI stream can be parsed from a pre-populated buffer,...
You can start with the examples included with exip. You can use the 'make examples'...
Hi Taki, Thank you for the prompt reply! The Ant method worked perfect for me! Side...
1. [BUG] for the year component of dateTime fixed
Hi Daniel, Thank you for the quick reply! I can verify that the bug reporting is...
Hi Daniel, Thank you for the quick reply! I can verify that the bug reporting is...
2 [BUG] fixes:
Implement the xs:totalDigits facet validation
Hi Daniel, I have the same issue as Tatu - there is no create ticket button when...
Hi Daniel, I have the same issue as Tatu - there is no create ticket button when...
Hi all, This thread is quite old but I stuck on the same issue now so wonder if anyone...
See https://sourceforge.net/p/exip/discussion/1177916/thread/53a49143/#28b7