NumericalLogical syntax seems strange

[Offline, so no refs, sorry]

w.r.t. SPARQL draft 17Feb2005

The syntax in productions [39] [40] seems odd to me.  In particular, it 
allows expressions like:

    i < j == k < l

which might theoretically be an equality comparison of Boolean values, but 
I'm not seeing any built-in operator for that.  I think these should 
possibly be a single production like:

NumericalLogical ::= NumericExpression
                      ( '==' NumericExpression
                      | '!=' NumericExpression
                      | '<' NumericExpression
                      | '>' NumericExpression
                      | '<=' NumericExpression
                      | '>=' NumericExpression )?

...

While I'm commenting on the grammar, I notice there seem to be rather a lot 
of dead productions (or synonyms), some of which are possibly confusing 
(e.g. [34] ConditionalXorExpression).

I can see one might want to have the extra productions in an 
implementation, but I think the specification would be better servedx by 
eliminating the redundant productions.

#g


------------
Graham Klyne
For email:
http://www.ninebynine.org/#Contact

Received on Monday, 11 April 2005 15:03:25 UTC