RE: RE : Question on Adding undeclared productions

Please find some comments inline.
Regards,
   Youenn

>So, as an example, it is possible to have a non-terminal with productions like:
>     ElemX : AT(*) ElemX    a
>     ElemX : AT(*) ElemX    b.c
>     ElemX : AT(*) [untyped value] ElemX   b.(c+1).d
>
>where the first two productions are completely interchangeable; whenever one could be used, the other could just as well >be used.  I don't see anything that prevents an implementation from actually using the longer event code (though I can't >imagine why they'd want to), so I suppose decode implementations are obliged to be ready to handle both the longer and >the shorter event codes.

Encoders can do whatever they want but will generally probably choose the shorter version.
Note though that one could tighten the rules so that only the shorter version is used .
This is one of the rule expressed in http://www.w3.org/TR/exi-c14n/ (section 2.2).

>I personally find this is a little surprising, so I think it would not be a bad idea to note the possibility of >interchangeable/redundant event codes in the text.  You might do so even in 8.5.4.4 as part of the introductory/overview >text.

Note also that an implementation may well use a AT(*) production even though there is a more precise AT(qname) production available.
The section that is supposed to deal with EXI event to EXI production is section 6, maybe it could be stated there from the beginning.

Regards,
	Youenn

Received on Friday, 15 November 2013 01:59:36 UTC