- From: Steven Pemberton <steven.pemberton@cwi.nl>
- Date: Mon, 14 Feb 2022 15:11:29 +0000
- To: "Norm Tovey-Walsh" <norm@saxonica.com>, ixml <public-ixml@w3.org>
Sure it is. Ambiguity is in the input, not in the output. It's why we go to such lengths about spaces in the ixml grammar. I call it "harmless" ambiguity, but spotting if a parse is ambiguous is easy (it's just a tree walk); spotting whether it is harmless is not easy: you have to compare the generated output from all the possible ambiguous parse trees, and there may be a lot of them. Ambiguous grammars also slow parse time down, sometimes by a lot. Steven On Sunday 13 February 2022 11:33:56 (+01:00), Norm Tovey-Walsh wrote: > Hello world, > > Consider this grammar: > > list: word + -',' . > word: c, v, c ; c, v, v . > -c: ["bcdfghjklmnpqrstvwxyz"] . > -v: ["aeiouy" ]. > > and this input: “hey,bee”. > > By one reckoning, that’s ambiguous: “hey” can be either cvc or cvv > because I’ve identified “y” as both a consonant and a vowel. > > But “c” and “v” are both elided from the output, so the generated XML is > identical for both parses. By that reckoning, it isn’t ambiguous. > > I expect our intent is that it *isn’t* ambiguous…but I thought I’d check. > > Be seeing you, > norm > > -- > Norm Tovey-Walsh > Saxonica >
Received on Monday, 14 February 2022 15:11:49 UTC