Hi Michael Bowen,
I see these problems with the new ABNF:
(1)
The new ABNF allows myData[ Gender ]
.
Derivation for that is:
[ Gender ]
matches spaced-lbracket inner-reference spaced-rbracket
with Gender
as inner-reference
.
Gender
as inner-reference
matches column-range
.
Gender
as column-range
matches simple-column-name
.
But Excel considers myData[ Gender ]
as invalid. When you enter it, Excel corrects it to myDate[Gender]
. When it is in file markup, Excel generates a #Ref!
error.
When you allow it in the ABNF, then you need to change Excel.
(2)
The new ABNF allows myData[ [#Headers] ]
.
Derivation for that is:
myData[ [#Headers] ]
matches spaced-lbracket inner-reference spaced-rbracket
with [#Headers]
as inner-reference
.
[#Headers]
as inner-reference
matches keyword-list
.
[#Headers]
as keyword-list
matches keyword
.
But Excel changes myData[ [#Headers] ]
to the invalid expression myDate [#Headers]
, both when you enter the expression or when it is in file markup.
When you allow myData[ [#Headers] ]
in the ABNF, then it is questionable whether Excel should change a valid expression. When you decide to keep the current behavior, Excel needs a fix to produce a valid expression. Excel needs to remove not only the brackets but the spaces as well.
So my question is, whether you really intend that myData[ Gender ]
and myData[ [#Headers] ]
are valid expressions?