an ambiguity in the ixml grammar for ixml grammars

Consider the following string.

(1)    S=a.a.a.a=a.a.a.a.=a.a.a.a='a'.

If I have done my sums correctly, there are 27 ways to parse this string
in accord with our current grammar for ixml grammars.

Many of them, perhaps all, suffer from flaws like multiple declarations
for some nonterminals, lack of declarations for others, or unreachable
nonterminals.  So I won't claim that there are 27 parses that interpret
this string as a conforming ixml grammar.  I will only claim that this
string exhibits an ambiguity in our grammar.

I seem to remember discussing with Steven some time ago the possibility
of ambiguities relating to full stop (since '.' is both a name character
and the terminator for rules), and that we persuaded ourselves that no
ambiguity actually existed, because all of the examples we thought about
proved on examination to be unambiguous.  For example, the string

(2)    S=a.b,b.a,'x'.

has only one parse that I can see as an ixml grammar.  But string (1)
appears to show that we were wrong about the ambiguity of the grammar,
if not about string (2).

I also seem to remember discussing with Bethan last month the
possibility of ambiguity relating to allowing colons in names, and it
appears from a review of the mail that we did not notice the existing
ambiguity.

My first reaction is to think that this is a major problem (a four-alarm
fire, as some say) that needs attention as soon as possible. Do others
agree, or am I over-reacting?

Michael

-- 
C. M. Sperberg-McQueen
Black Mesa Technologies LLC
http://blackmesatech.com

Received on Friday, 25 February 2022 23:12:59 UTC