The XPath 2.0 grammar as presented in the specification
does require look-ahead to parse unambiguously, and even with lookahead,
it requires some extra-grammatical rules to disambiguate certain constructs
such as

/ union /*

or

4 treat as item() + - 5

Occurrence indicators are one such case, and the rules
for resolving the ambiguity are described in A1.2 (Constraint:
occurrence-indicators).

I think there might be a bug in the XPath 2.0 spec. I was trying to
implement it in Java (using Sablecc). I get a shift/reduce error on a
Multiplicative expression (when it is a treat expression followed by a +).
This can conflict with the possibility of an occurence indicator (just a +
sign). I fixed a few other similar errors and found I just had to be more
precise in my grammar file. But this seems to be an honest ambiguity in
language itself.

Is this a conflict in the spec? I've attached my
error log and grammar file.

Tim

__________________________________________________Do
You Yahoo!?Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com