xsi:type, namespaces and preserving lexical values

Dear all,

This is feedback we have related to the EXI specification.

When preserveLexicalValues is true, @xsi:type should be encoded as a string, right?
In the case of preserving lexical values but not preserving namespaces (strict mode for instance),
the EXI stream will not contain any information about the URI of the @xsi:type qname value.
If that is correct, there is a potential issue:

-          Encoder has the URI information

o   Encoder will pick the grammar from the @xsi:type value (according the spec)

-          Decoder has not the URI information

o   It is not able to check whether there is a grammar associated to the @xsi:type value

o   Decoder will pick the default grammar (this my interpretation of the spec)
I am a bit surprised that  @xsi:type dynamic typing would not be usable when preserving lexical values in strict mode...
Anyway, the spec should probably align the EXI encoder behavior with the EXI decoder.

Regards,
                Youenn

Received on Friday, 29 January 2010 14:17:03 UTC